【问题标题】:Create ASP.NET page with CodeBehind Dynamically使用 CodeBehind 动态创建 ASP.NET 页面
【发布时间】:2012-03-25 05:19:39
【问题描述】:

我想创建一个简单的

default.aspx 默认.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!"";
        }
    }
";

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

【问题讨论】:

  • 老实说,我认为你已经走了很长一段路。为什么不直接为页面创建html文件呢?
  • 我必须做一些更高级的事情,比如从服务器上的文件中提取数据,等等 HTML 文件是不切实际的。
  • 但是asp.net还是只生成html?否则你将如何编译页面?

标签: c# asp.net dynamic code-behind


【解决方案1】:

您可以尝试使用母版页的代码隐藏,处理事件,并仅动态创建内容页面。

【讨论】:

  • 这很好,但前提是我也可以动态制作母版页。我认为我尝试动态创建这些页面的方式存在潜在问题。我希望有人能够识别并修复它。
【解决方案2】:

既然可以在 aspx 文件中添加代码,为什么还要创建代码隐藏呢?简单得多,您仍然拥有所有 page_load 事件等

【讨论】:

  • 这就是我最终要做的。谢谢和其他处于相同情况的人,我建议做同样的事情
猜你喜欢
  • 2012-05-11
  • 2017-01-03
  • 1970-01-01
  • 1970-01-01
  • 2017-11-01
  • 2015-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多