EntLib 4.0:异常处理应用程序块

时间:2009-03-18 16:28:12

标签: c# exception-handling 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 个答案:

答案 0 :(得分:2)

您需要处理多少个例外?

此应用程序块主要用于处理层边界上的异常。例如,数据访问层的顶级代码可能会使用此代码,因此您可以配置是否以及如何记录DAL异常,是否包装非DAL异常等。但是您的私有内部方法不应该处理异常所有

不,EAL不做属性。