异常:由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值

在一般处理程序中执行 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方法。

posted @ 2018-08-03 13:50  刀尖上的舞者  阅读(184)  评论(0编辑  收藏  举报