2013-11-25 67 views
0

我將Microsoft企業應用程序塊的「異常處理」模塊添加到我的項目中。按照他們的說明mnsd MSDN它說我需要添加using Microsoft.Practices.EnterpriseLibrary.ExceptionHandling;聲明。這是否需要在引發由塊處理的異常的每個單個文件中進行,還是隻需要捕獲錯誤的文件?什麼類需要'使用'企業應用程序塊的DLL?

例如,假設我有FormMainView,FormMainPresenter和Class1,Class2,Class3。 FormMainView是調用FormMainPresenter的視圖,並將特定的任務委託給這三個類。第1-3類拋出了各種異常,它們在Presenter中被捕獲。所有4個文件是否需要這個使用語句,或只是演示者?

順便使用MS EAB 4.1。

回答

1

using聲明需要在所有的.cs文件,它們使用的Exception的。這兩個類都拋出處理拋出的異常的異常和類。

當您錯過使用時,Visual studio會發出抱怨。要仔細檢查你的用法,你可以刪除一個,看看編譯器是否抱怨,如果它確實需要使用。如果它沒有抱怨,那麼使用是多餘的。

FormMainView是調用FormMainPresenter的觀點,並認爲 代表具體任務三類。

類1-3擲 各種異常和他們陷入了演示。

做所有4個文件 需要這個使用語句,還是隻需要演示者?

如果異常在FormMainPresenter抓住,FormMainView不會需要了解他們,所以沒有使用,需要在FormMainPresenter。需要使用其他4個類。

+0

關於你的第二段,或許我誤解了異常處理塊的工作原理。假設我只是在使用System.IO時拋出了File Not Found異常。這會編譯得很好。現在說我的Exception塊有一個File Not Found例外的策略......它會不會編譯得很好,但不像我預期的那樣行事?仍然在配置我的應用程序文件和閱讀MSDN的過程中,所以我不能輕鬆測試它。 我想一個更好的回答是,它只是說「使用'使用'語句,而不是完全限定它」,所以我不知道我會在哪裏「尋址」該塊 – sab669

相關問題