2013-07-10 75 views
0

我正在使用ASP.NET MVC 4,.Net 4.5,Windows Azure。我使用OnException()控制器基類方法處理所有異常,並使用Frontier(Web Application)編寫try catch塊。我正在考慮以類似的方式處理中間層(BLL,DAL)中的所有異常,而無需編寫try catch塊,因爲已經完成了百萬行代碼而沒有異常處理。這可能嗎 ?尋找建議。處理類庫上的異常而不嘗試Catch

+0

沒有什麼是不可能的。你如何處理這一切都取決於你。 –

+0

爲什麼你想要處理BLL和DAL中的所有觀念?一般來說,你應該讓例外冒出來。 – Steven

+2

在ASP.NET中處理頂級異常的常用方法是使用'Application_Error'事件。這也將捕獲來自非控制器請求的所有異常。 – Steven

回答

1

有一些異常處理框架的可攔截異常和執行各種任務(記錄它們,發送通知郵件等)

ELMAH是爲Web應用程序一個很好的選擇,雖然這聽起來像你有這方面的覆蓋。

你也可以看看Microsoft Patterns & Practices Enterprise LibraryException Handling & Logging

雖然在一般,這是很好的做法,泡你的異常回到最高調用應用程序塊,讓它照顧應用程序日誌在一個地方。

+0

你可以請一些冒泡的異常方式嗎? –