Thread was being aborted :中文意思 线程被终止
引用地址:http://support.microsoft.com/default.aspx/kb/312629/EN-US/?p=1
原因:
那个 Response.End 方法结束页的执行,并转移到执行 的Application_EndRequest 事件在应用程序的事件管道。该行的代码如下 Response.End 不会被执行。 此问题出现在 Response.Redirect 和 Server.Transfer方法 方法,因为这两种方法调用 Response.End 在内部。
解决方案:
若要解决此问题,请使用下列方法之一:
- 为了 Response.End,调用 HttpContext.Current.ApplicationInstance.CompleteRequest 方法,而不是 Response.End 绕过的代码执行 的Application_EndRequest 事件。
try{
HttpContext.Current.Response.ContentEncoding = utf; HttpContext.Current.Response.Write(style); HttpContext.Current.Response.Write(sb.ToString()); //HttpContext.Current.Response.End();
} catch{} finally { System.Web.HttpContext.Current.ApplicationInstance.CompleteRequest(); }
另:尽量不要把Response.Redirect("targetUrl");语句写在try里面了! 使用Response.Redirect("targetUrl",false); |