ASP.NET try catch error and Response.End()
try catch並不會在try抓到錯誤時,執行catch後停止,而是會catch之後繼續執行。
也就是
try {
//do1
// error
//do2
}catch (Exception Ex){
//do
}
在try中執行do1後,遇到error,進入catch執行do之後,會再回到do2,此時會造成do2如果有需要do1處理的資料時,會產生錯誤,然後直接跳出error page
這時候要進行throw();才能停止執行。
但是由於throw();會丟出預設的錯誤頁面,可能會透漏一些程式訊息,又或者是不想讓使用者看到奇怪的頁面,因此throw就會變得很麻煩,可能要自己寫一個error page。
Responese.End();
參考:
https://social.msdn.microsoft.com/Forums/zh-TW/8ddc83e1-ae91-4c90-a00e-c6e52212d117/c-try-catch?forum=242
留言
張貼留言