技术开发 频道

Enterprise Library Step By Step系列(十一):异常处理应用程序块

2.打开配置工具,创建一个异常应用程序块。

3.创建一个策略。

4.命名为Wrap Policy

5.创建一个异常类型Exception

6.创建一个异常处理器,命名为Wrap Handler,选择它的WrapExceptionTypeName为我们刚才创建的那个异常包装类。


7.同样,再创建一个替换策略和日志策略,分别命名为Replace PolicyLog Policy,注意Log Policy依赖于日志和监测应用程序块。

8.拷贝目录(我每次都说,大家可能会觉着烦^_^,不过我自己总是忘了这一条,所以不得不每次提醒大家)。

copy "$(ProjectDir)\*.config" "$(TargetDir)" > Nul

9.在程序中编写代码(代码编写很简单)。

1/**//// <summary> 2 /// 包装策略 3 /// </summary> 4 /// <param name="sender"></param> 5 /// <param name="e"></param> 6 private void btn_Wrap_Click(object sender, System.EventArgs e) 7 { 8 try 9 { 10 Exception ex = new Exception(); 11 throw ex; 12 } 13 catch(DllNotFoundException ex) 14 { 15 bool Flag = ExceptionPolicy.HandleException(ex,"Wrap Policy"); 16 17 if(Flag) 18 { 19 throw; 20 } 21 } 22 /**////我们可以多次捕获异常 23 catch(Exception ex) 24 { 25 bool Flag = ExceptionPolicy.HandleException(ex,"Wrap Policy"); 26 27 if(Flag) 28 { 29 throw; 30 } 31 } 32 } 33 34 /**//// <summary> 35 /// 替换策略 36 /// </summary> 37 /// <param name="sender"></param> 38 /// <param name="e"></param> 39 private void btn_Replace_Click(object sender, System.EventArgs e) 40 { 41 try 42 { 43 Exception ex = new Exception(); 44 throw ex; 45 } 46 catch(Exception ex) 47 { 48 bool Flag = ExceptionPolicy.HandleException(ex,"Replace Policy"); 49 50 if(Flag) 51 { 52 throw; 53 } 54 } 55 } 56 57 /**//// <summary> 58 /// 日志策略 59 /// </summary> 60 /// <param name="sender"></param> 61 /// <param name="e"></param> 62 private void btn_Log_Click(object sender, System.EventArgs e) 63 { 64 try 65 { 66 Exception ex = new Exception(); 67 throw ex; 68 } 69 catch(Exception ex) 70 { 71 bool Flag = ExceptionPolicy.HandleException(ex,"Log Policy"); 72 73 if(Flag) 74 { 75 throw; 76 } 77 } 78 }

10.执行程序,单击日志策略。在事件查看器中查看相应的日志记录。

结束语:异常处理应用程序块相对于其他应用程序块来说是比较简单的,入门篇里就介绍这么多了J

0
相关文章