2013-11-25 4 views
0

Microsoft 엔터프라이즈 응용 프로그램 블록의 "예외 처리"모듈을 프로젝트에 추가하고 있습니다. thier 지침에 따라 MSDNusing Microsoft.Practices.EnterpriseLibrary.ExceptionHandling; 문을 추가해야한다고 나와 있습니다. 블록 단위로 처리되는 예외를 throw하는 모든 단일 파일 또는 오류를 포착하는 파일에만이 작업을 수행해야합니까?어떤 클래스가 엔터프라이즈 응용 프로그램 블록의 dll을 '사용'해야합니까?

예를 들어 FormMainView, FormMainPresenter 및 Class1, Class2, Class3이 있다고 가정 해 보겠습니다. FormMainView는 FormMainPresenter를 호출하는 뷰이며 특정 작업을 세 클래스에 위임합니다. 클래스 1 -3은 다양한 예외를 던지며 발표자에게 잡히게됩니다. 4 개의 파일 모두에 명세서가 필요하거나 발표자 만 필요합니까?

MS EAB 4.1을 사용하십시오.

답변

1

using 문은 Exception을 사용하는 모든 .cs 파일에 있어야합니다. 던진 예외를 처리하는 두 클래스와 예외를 처리하는 클래스.

비주얼 스튜디오는 사용하지 않을 때 불평 할 것입니다. 사용을 재확인하려면 컴파일러가 불만을 표시하는지 확인한 다음 컴파일러가 불평하는지 확인하십시오. 그것이 불평하지 않는 경우에 사용은 과다했다.

FormMainView는 FormMainPresenter를 호출하는보기이며 은 세 가지 클래스에 특정 작업을 위임합니다.

클래스 1 -3 throw 다양한 예외 사항이 있으며 발표자에게 걸려 있습니다.

파일을 모두 사용하려면이 using 문 또는 발표자 만 필요합니까? 예외가 FormMainPresenter에 걸린 경우

, FormMainView는 그래서 사용이 FormMainPresenter에 필요하지 않습니다 그들에 대해 알 필요가 없습니다. 다른 4 개의 클래스에서 사용하는 것이 필요합니다.

+0

두 번째 단락과 관련하여 예외 처리 블록이 어떻게 작동하는지 오해 할 것입니다. System.IO를 사용하는 동안 File Not Found 예외를 던졌습니다. 그것은 완벽하게 잘 컴파일됩니다. 이제 내 Exception 블록에 File Not Found 예외에 대한 정책이 있다고 가정 해 봅시다 ... 아직 컴파일이 잘되지는 않지만 예상대로 동작하지 않습니까? 아직 내 App 파일을 구성하고 MSDN을 읽는 과정에서 쉽게 테스트 할 수 없습니다. 더 나은 응답은 간단히 말해서 "완전히"대신 "사용"문을 사용한다는 것입니다. 따라서 "블록 지정"이 어디 있는지 확신 할 수 없었습니다 – sab669