- 我有一个网络表单,它使用母版页中的事件来记录活动
- 我有一个sitemap.aspx文件,可以为谷歌生成合适的XML
- sitemap.aspx调用Response.End()以确保不会呈现正常的ASP.NET内容(视图状态、母版页内容等)。此XML必须精确
- 当我从内容页调用Response.End()时,母版页的任何事件都不会触发
有没有一种方法可以告诉CLR发送这个字符串作为响应,同时允许母版页继续正常执行,而不必将ASPX与母版页解耦并手动调用日志记录方法?
没有预打包的方法可以满足您的要求。
一种方法可能是在将字符串写入输出缓冲区后,在某个地方(可能在HttpContext.Items
中)设置一个标志。然后,在页面类中,重写Render()
方法;如果未设置标志,则调用base.Render()
,否则不设置。通过跳过Render()
,将不会生成额外的输出。