簡體   English   中英

在HttpModule中渲染頁面?

[英]Render a page inside of an HttpModule?

任何人都知道如何在HttpModule中呈現一個aspx頁面並將其流回瀏覽器?

你可以這樣做:

Type page_type = BuildManager.GetCompiledType ("~/page.aspx");
Page page = (Page) Activator.CreateInstance (page_type);
page.ProcessRequest (Context);
public void ProcessRequest(HttpContext context)
{
    using (var writer = new StringWriter())
    {
        context.Server.Execute("default.aspx", writer);
        context.Response.ContentType = "text/html";
        context.Response.Write(writer.GetStringBuilder().ToString());
    }
}

最好的方法可能是使用URL重寫將標准處理程序處理步驟重定向到要渲染的頁面。 就像是:

context.RewritePath("yourpage.aspx", false);

您可以從BeginRequest事件處理程序運行它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM