Search

Monday, December 1, 2014
0 comments

How to create aspx page at run time in ASP.NET

10:28 PMMonday, December 1, 2014
ASPX stands for active server page extension. We know that visual studio create a aspx page for dynamic application. Also one another page is created for business logics. If you want to create both pages(presentation+business logic) through code file then first to create two array for both pages. After that save the file through file handling in same solution.

Source Code

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
 

</head>
<body>
    <form id="form1" runat="server">
      Enter page Name  <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
        <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />

        <br />
        <br />
        <asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="Created Page" />

    </form>
 
     

</body>
</html>

Code Behind file

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Default2 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
      
    }



    protected void Button1_Click(object sender, EventArgs e)
    {

        String[] sourcecode ={"<%@ Page Language=\"C#\" AutoEventWireup=\"true\" CodeFile=\""+  TextBox1.Text.Trim()+".aspx.cs\" Inherits=\""+ TextBox1.Text.Trim()+"\" %>",
                                 "<html xmlns=\"http://www.w3.org/1999/xhtml\">",
                                 "<head runat=\"server\">",
                                 "<title></title>",
                                " </head>",
"<body>",
    "<form id=\"form1\" runat=\"server\">",
    "</form>",
    "</body>",
"</html>"
                             };

        String[] codefile = {
                                "using System;",
"using System.Collections.Generic;",
"using System.IO;",
"using System.Linq;",
"using System.Web;",
"using System.Web.UI;",
"using System.Web.UI.WebControls;",

"public partial class "+ TextBox1.Text.Trim()+" : System.Web.UI.Page",
"{",
    "protected void Page_Load(object sender, EventArgs e)",
    "{",
      
    "}",
    "}"};

        File.WriteAllLines(Server.MapPath("" + TextBox1.Text.Trim() + ".aspx"), sourcecode);
        File.WriteAllLines(Server.MapPath("" + TextBox1.Text.Trim() + ".aspx.cs"), codefile);
        Response.Write("Page Created");

    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        Response.Redirect("~/" + TextBox1.Text);
    }
}

Code generate the following output

Protected by Copyscape Online Copyright Protection Software

0 comments :

Post a Comment

 
Toggle Footer
Top