EntLib 4.0: блок обработки исключений - PullRequest
1 голос
/ 18 марта 2009

Я только начинаю использовать блок обработки исключений Enterprise Library.

Это кажется немного громоздким.

Мне действительно нужно сделать

 try
 {
     //Do something with a DirectoryInfo object
 }
 catch(DirectoryNotFoundException ex)
 {
   bool rethrow = ExceptionPolicy.Handle(ex, _exceptionPolicyName);

   if(rethrow)
        throw;
 }

Везде, где я хочу обрабатывать исключения?

Или я должен просто обернуть верхний уровень в

 try
 {
     //Entrypoint code
 }
 catch(Exception ex)
 {
   bool rethrow = ExceptionPolicy.Handle(ex, _exceptionPolicyName);

   if(rethrow)
        throw;
 }

У меня сложилось впечатление, что я могу связать это с атрибутами?

1 Ответ

2 голосов
/ 18 марта 2009

Сколько мест вам нужно для обработки исключений?

Этот прикладной блок в основном используется для обработки исключений на границах слоев. Например, код верхнего уровня вашего уровня доступа к данным может использовать это, чтобы вы могли настроить, регистрировать ли и как исключения DAL, переносить исключение не-DAL и т. Д. Но ваши внутренние, внутренние методы не должны обрабатывать исключения в все.

И нет, EAL не имеет атрибутов.

...