Step 1: Design (Default.aspx)
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="FibonacciWebApp.Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Fibonacci Series Generator</title>
    <style>
        body {
            font-family: Arial;
            background-color: #f5f6fa;
            text-align: center;
            padding: 40px;
        }
        .container {
            background-color: #fff;
            border-radius: 10px;
            padding: 30px;
            width: 450px;
            margin: auto;
            box-shadow: 0px 0px 10px #ccc;
        }
        h2 { color: #1A2A80; }
        input, button {
            margin: 10px;
            padding: 8px;
            font-size: 16px;
        }
        .result {
            color: green;
            font-weight: bold;
            word-wrap: break-word;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
        <div class="container">
            <h2>Fibonacci Series Generator</h2>
            <asp:Label ID="Label1" runat="server" Text="Enter Number of Terms: "></asp:Label>
            <asp:TextBox ID="txtTerms" runat="server"></asp:TextBox>
            <br />
            <asp:Button ID="btnGenerate" runat="server" Text="Generate Fibonacci Series" OnClick="btnGenerate_Click" />
            <br /><br />
            <asp:Label ID="lblResult" runat="server" CssClass="result"></asp:Label>
        </div>
    </form>
</body>
</html>
Step 2: Backend Logic (Default.aspx.cs)
using System;
using System.Text;
namespace FibonacciWebApp
{
    public partial class Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }
        protected void btnGenerate_Click(object sender, EventArgs e)
        {
            try
            {
                int n = int.Parse(txtTerms.Text);
                if (n <= 0)
                {
                    lblResult.Text = " Please enter a positive integer greater than zero.";
                    return;
                }
                lblResult.Text = $"Fibonacci Series up to {n} terms:<br/>" + GenerateFibonacci(n);
            }
            catch (FormatException)
            {
                lblResult.Text = " Please enter a valid number.";
            }
            catch (Exception ex)
            {
                lblResult.Text = $"Error: {ex.Message}";
            }
        }
        private string GenerateFibonacci(int n)
        {
            int first = 0, second = 1, next;
            StringBuilder series = new StringBuilder();
            series.Append(first + " ");
            for (int i = 1; i < n; i++)
            {
                series.Append(second + " ");
                next = first + second;
                first = second;
                second = next;
            }
            return series.ToString();
        }
    }
}
Real-Time Flow Explanation
- The user enters how many Fibonacci terms they want (for example, 10). 
- On clicking Generate, the backend runs - GenerateFibonacci()method.
 
- The method uses a loop and a StringBuilder to efficiently build the Fibonacci series string. 
- The output is displayed on the webpage dynamically. 
Output Example
If user enters 8,
Fibonacci Series up to 8 terms:
0 1 1 2 3 5 8 13
Real-Time Use Case
This logic can be used in:
- Math learning web portals for students. 
- Online coding practice systems (like HackerRank/LeetCode practice pages). 
- Company coding tests in WebForms environments. 
- Dashboard Widgets that show numerical sequences for demonstrations.