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

留言

這個網誌中的熱門文章

無法載入檔案或組件 'System.IO.Compression' 或其相依性的其中之一。

MongoDB 入門

javascript 更改屬性及創建標籤