企业程序库(五)——异常处理应用程序块简介

异常处理应用程序块简介
Enterprise Library Exception Handling Application Block 1.0 版,使开发人员和决策人员能够针对发生在企业应用程序体系结构层的异常处理创建一致的策略。它的实现方法如下:
•它支持整个应用程序体系结构层的异常处理,而不仅限于服务接口的界限。
•它使得异常处理策略可以在管理层定义和维护,以便决策人员(可能是系统管理员和开发人员)可以定义如何处理异常。他们可以维护和修改控制异常处理的规则集,而无需更改块的应用程序代码。
•它提供了常用的异常处理功能,例如记录异常信息的功能、通过将原始异常替换为其他异常来隐藏敏感信息的功能,以及通过将原始异常打包到另一个异常中来添加异常的上下文信息的功能。这些功能封装在名为 exception handlers 的 .NET 类中。
•它可以合并多个异常处理程序以产生某个异常所需的响应,例如先记录异常信息,再将原始异常替换为其他异常。
•它使开发人员能够创建自己的异常处理程序。
•它以一致的方式调用异常处理程序。这意味着,处理程序可以在应用程序之中和之间的多种场合下使用。
常见情况
异常处理应用程序块被设计为支持包含在应用程序组件的 catch 语句中的典型代码。该应用程序块允许开发人员将此逻辑封装为可重用的异常处理程序,而不是在应用程序组件的相同 catch 块中重复这段代码(例如,记录异常信息)。异常处理程序是封装异常处理逻辑和实现名为 IExceptionHandler 的异常处理应用程序块接口的 .NET 类。异常处理应用程序块包含三个异常处理程序:
包装处理程序。此异常处理程序可将一个异常包装到另一个异常中。
替换处理程序。此异常处理程序可将一个异常替换为另一个异常。
日志处理程序。此异常处理程序可格式化异常信息,例如消息和堆栈跟踪等。然后,日志处理程序将该信息提供给企业程序库日志和规范应用程序块,以便可以将它发布。
异常处理应用程序块可让您将异常类型与指定的策略相关联。您可以使用配置控制台来完成此项工作。策略可指定在应用程序块处理特定异常类型时执行的异常处理程序。您可以将这些处理程序串联起来,这样,在处理关联的异常类型时就可以执行一系列处理程序。

读者要求
该应用程序块专为软件架构师和软件开发人员而设计。要充分利用该指导,您应该了解以下技术:
•Microsoft Visual C# 开发工具或 Microsoft Visual Basic 开发系统
•.NET Framework

1.0 版的主要特点
Enterprise Library Exception Handling Application Block 1.0 版包含以下新功能:
•用于管理配置设置的图形工具
•用于开发异常处理策略的一组广泛的工具
•在管理层定义和维护异常处理策略的能力
•常用的异常处理功能

从异常管理应用程序块迁移
早期版本的应用程序块名为异常管理应用程序块,它用于向特定位置发布异常信息。新版本的应用程序块名为异常处理应用程序块,它提供了一组更为广泛的工具,用于开发异常处理策略。异常处理应用程序块与异常管理应用程序块主要有三点不同:
•发布异常信息的任务不再与其他异常处理任务相集成。相反,它由日志处理程序专门处理。日志处理程序会格式化该信息并将其传给日志和规范应用程序块,以便发布该信息。
•多个异常处理程序可以连在一起,每个处理程序都能够在传递给链中后续处理程序的异常之前执行其功能。
•异常管理应用程序块只能对应用程序传递给它的原始异常进行操作,并且只能记录异常信息。而异常处理应用程序块则提供了一组更为广泛的功能。它可以为异常更改、取消或添加信息,以及替换经常在应用程序的 catch 语句中出现的大多数代码。

系统要求
要使用异常处理应用程序块来开发应用程序块,您需要以下软件:
•Microsoft Windows 2000、Windows XP Professional 或 Windows Server 2003 操作系统
•Microsoft .NET Framework 1.1
•Microsoft Visual Studio .NET 2003
异常处理应用程序块依赖项
企业程序库提供的应用程序块被设计为能够彼此配合使用。有时,应用程序块依赖于其他应用程序块和企业程序库中包含的代码。异常处理应用程序块具有以下依赖项:
企业程序库配置应用程序块。异常处理应用程序块使用它来读取其配置信息。
通用程序库功能,例如规范。它提供了各种功能来公开用于系统管理的事件和数据。
应用程序块包括记录异常信息的异常处理程序。使用这个日志异常处理程序的应用程序需要 日志和规范应用程序块
默认情况下,应用程序块使用 XML 文件来存储配置信息。修改该信息的推荐方法是使用企业程序库配置控制台。

异常处理应用程序块的设计
异常处理应用程序块旨在实现以下目标:
•将用于执行最常见异常处理任务的逻辑封装在最少的应用程序代码中
•减少开发人员编写重复代码和用于常见异常处理任务的自定义代码的要求
•允许异常处理策略在其部署后更改,并确保更改发生的同步性和一致性
•集成异常处理的最佳做法

设计要点
图 1 展示了异常处理应用程序块中关键类的相互关系。

点击在新窗口中浏览此图片
1. 异常处理应用程序块的设计


你可能感兴趣的:(异常处理)