2012-03-07 80 views
0

创建ASP.NET页面,我想与代码隐藏动态

页dyamically创建一个简单的

Default.aspx的 default.aspx.cs并将其存储在服务器上。

我使用的StreamWriter创建目录和两个文件

创建不访问代码隐藏在Default.aspx的。

private string displayPage = @"<%@ Page Language=""C#"" AutoEventWireup=""true"" CodeBehind=""Default.aspx.cs"" %> 

<!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.0 Transitional//EN"" ""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd""> 

<html xmlns=""http://www.w3.org/1999/xhtml""> 
<head runat=""server""> 
    <title></title> 
</head> 
<body> 
    <form id=""form1"" runat=""server""> 
    <div> 
     <asp:Label id=""_lblBody"" runat=""server"" /> 
     <asp:Label id=""_lblFooter"" runat=""server"" /> 
    </div> 
    </form> 
</body> 
</html>"; 

     private string codeBehindPage = @"using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

    public partial class _default : System.Web.UI.Page 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
      _lblBody.Text = ""Hello World!""; 
     } 
    } 
"; 

可以这样做吗?任何建议,谢谢!

+0

我认为你要走很长的路要说实话。为什么不直接为页面创建html文件? – ThePower 2012-03-07 16:44:33

+0

我必须做更高级的事情,比如从服务器上的文件中提取数据等等,这对HTML文件来说是不切实际的。 – 2012-03-07 17:30:34

+0

但是asp.net只生成html吗?否则,你将如何编译页面? – ThePower 2012-03-08 08:53:48

回答

0

为什么只要在aspx文件中添加代码就可以创建代码隐藏?简单得多,你仍然拥有你所有的page_load事件,例如

+0

这就是我最终做的。谢谢和其他人在相同的情况下我建议做同样的事情 – 2012-03-08 16:01:27

1

您可以尝试使用masterpage的代码隐藏,hadndle事件以及动态创建仅内容页面。

+0

这很好,但前提是我也可以动态创建主页面。我认为我尝试动态创建这些页面的方式存在一个根本问题。我希望有人能够认识到并解决它。 – 2012-03-07 17:05:23

+0

它在ASP.NET MVC中修复;) – user1240641 2012-03-21 15:16:54