在母版页中捕获HTML输出

时间:2013-11-10 13:15:26

标签: c# asp.net

我想在母版页的LoadComplete事件中捕获asp.net页面的HTML输出。这就是我所拥有的:

public partial class MasterPage_MyBlogMainMaster : System.Web.UI.MasterPage
{
    protected void Page_LoadComplete(object sender, EventArgs e)
    {
        var PageURL = HttpContext.Current.Request.Url.AbsolutePath;

        StringBuilder sb = new StringBuilder();
        StringWriter sw = new StringWriter(sb);

        HtmlTextWriter hWriter = new HtmlTextWriter(sw);
        base.Render(hWriter);

        string PageResult = sb.ToString();
    }
}

问题是事件似乎没有触发。我需要改变什么?

感谢。

2 个答案:

答案 0 :(得分:1)

好的,我得到了它的工作;如果有人来到这个页面,你就是这样做的。问题是LoadComplete事件需要在Page_Load方法中连接,如下所示:

protected void Page_Load(object sender, EventArgs e)
{
     Page.LoadComplete += new EventHandler(Page_LoadComplete);
}

protected void Page_LoadComplete(object sender, EventArgs e)
{
  ... now this works
}

答案 1 :(得分:0)

也许尝试使用HttpHandler(您也可以过滤掉其中没有感兴趣的网页):Capturing HTML generated from ASP.NET