在一般处理程序中执行 context.Response.End()方法会报出:”由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值”这个异常。
对于这个异常微软有解决方案:https://support.microsoft.com/zh-cn/kb/312629
三种方法:
1.对于Response.End .调用HttpContext.Current.ApplicationInstance.CompleteRequest方法,而不是Response.End能够绕过到Application_EndRequest事件的代码执行
2.对于Response.Redirect, 使用重载,传递false以取消内部调用Response.End的endResponse参数的Response.Redirect (url 字符串、 布尔值 endResponse).
3.对于Server.Transfer.而是使用Server.Execute方法。