我在我的asp.net c#网页应用程序中偶尔会遇到这个异常:
服务器无法在HTTP标头已发送后追加标头。
这是由于应用程序在页面发送后向页面响应头附加内容。我不确定为什么它是间歇性的,但我需要在修改标题之前执行检查以检查页面是否已发送。
有人知道我如何进行这样的检查吗?
我在我的asp.net c#网页应用程序中偶尔会遇到这个异常:
服务器无法在HTTP标头已发送后追加标头。
这是由于应用程序在页面发送后向页面响应头附加内容。我不确定为什么它是间歇性的,但我需要在修改标题之前执行检查以检查页面是否已发送。
有人知道我如何进行这样的检查吗?
订阅HttpApplication
的PreSendRequestHeaders
事件,并假定在此时已发送标头。在上下文中设置一个标志,并在所有地方检查它。
不太好看的解决方案:HttpResponse
有一个名为HeadersWritten
的内部属性。由于它是内部的,您必须通过反射来访问它。我建议仅在调试时使用它。在所有页面生命周期事件之前/之后检查它,并找出问题所在。请勿将其保留在生产代码中。