内容页面响应。在继续执行主页面时执行

时间:2012-02-15 03:44:10

标签: asp.net master-pages page-lifecycle

  • 我有一个webform,它使用母版页中的事件来记录活动。
  • 我有一个sitemap.aspx文件,可以为Google生成适当的XML。
  • sitemap.aspx调用Response.End()以确保不呈现正常的ASP.NET内容(视图状态,母版页内容等)。这个XML必须准确。
  • 当我从内容页面调用Response.End()时,不会触发任何母版页的事件。

有没有办法告诉CLR发送这个字符串作为响应,同时允许Master页面继续正常执行,而不必将ASPX与Master页面分离,手动调用日志记录方法?

1 个答案:

答案 0 :(得分:1)

没有预先打包的方式来做你想要的事情。

一种方法可能是在将字符串写入输出缓冲区后在某处(可能在HttpContext.Items)设置标志。然后,在您的网页类中,覆盖Render()方法;如果未设置标志,则调用base.Render(),否则调用Render()。通过跳过{{1}},不会生成其他输出。