Response.End in ASP.NET

摘要:Response.End in ASP.NET

將網頁轉出成word的時候,最後會來個Response.End()來結束它的輸出,但都會發生<System.Threading.ThreadAbortException> 執行緒已經中止,雖然不會造成系統上的什麼問題,但總覺得怪怪的。

解決方法:

1.    繼續用Response.End(),外面用try – catch包住,但try – catch會比較消耗資源,所以不考慮。
2.    改用HttpContext.Current.ApplicationInstance.CompleteRequest(),可以跳過Application_EndRequest 事件的執行
 
另外,如果使用Response.Redirect Server.Transfer 方法也發生一樣狀況的話,就可以使用Response.Redirect(String url, bool endResponse)endResponse就設為False,因為Response.Redirect內部會用到Response.End(),設為False就是要停用Response.End()方法。