【问题标题】:Can I render html from ASP.NET Page objects outside ASP.NET applications?我可以从 ASP.NET 应用程序之外的 ASP.NET Page 对象呈现 html 吗?
【发布时间】:2010-07-01 20:18:49
【问题描述】:

我不是在谈论使用“ApplicationHost”类托管 ASP.NET。例如,如果我创建一个控制台应用程序,创建一个有效的 HttpContext 对象并将其传递给自定义 Page 对象的 ProcessRequest,它是否会像在 ASP.NET 中运行一样填充 HttpReponse html?

【问题讨论】:

    标签: c# .net asp.net httprequest httpcontext


    【解决方案1】:

    我不明白为什么不。

    尝试使用 RenderControl() 方法从页面或 Web 控件获取 html。

    static public string GetHTML(Control myControl)
    {
            System.IO.StringWriter sw = new System.IO.StringWriter();
            HtmlTextWriter myWriter = new HtmlTextWriter(sw);
            myControl.RenderControl(myWriter);
            return sw.ToString();
    }
    

    我用它来异步渲染 GridView。

    【讨论】:

    • 我担心渲染 html 会依赖于当前 appdomain 上的 Asp.Net 运行时
    【解决方案2】:

    如果您正在谈论自定义 ASP.NET 控件,那么您可以通过编程方式创建它们并让它们轻松地呈现为字符串。如果这是您有兴趣做的事情,那么我过去已经做过,可以为您挖掘代码。

    【讨论】:

    • 我说的是任何类型的实现 IHttpHandler 的类。
    猜你喜欢
    • 2010-09-14
    • 2011-01-24
    • 1970-01-01
    • 1970-01-01
    • 2016-09-11
    • 1970-01-01
    • 2011-02-07
    • 2021-04-30
    • 1970-01-01
    相关资源
    最近更新 更多