1.1 关于 Enterprise Library 3.1
转载请注明出处:http://www.cnblogs.com/doriandeng/archive/2007/09/29/911139.html
这个 Enterprise Library 发行版包括二个新的应用程序块( 验证应用程序块和策略注入应用程序块)、二个向导包、以及与 Visual Studio 集成的配置编辑器。还有数据访问应用程序块和日志应用程序块功能的增加。下面各节将讨论这些和其他在这个发行中中的变化。
影响所有应用程序块的变化
影响所有应用程序块的 Enterprise Library 的变化如下:
-
Enterprise Library 的这个版本包括了所有源码的预编译强命名程序集。更多信息,请参阅使用 Enterprise Library 二进制。
-
现在,一个独立的 Microsoft Windows 安装包(.msi 文件)为 Enterprise Library 提供源码。这个 windows 安装包由主 .msi 文件安装。源码 .msi 文件允许你释放源码的一个副本并放置在一个文件目录下,这个目录正是你多次想指定的。
-
用于 Enterprise Library 的部分信任补丁 2554。2006年1月已合并到 Enterprise Library 核心。
-
用于 Enterprise Library 的管理性扩展。2006年1月已合并到 Enterprise Library 核心。
-
现在可以使用 Visual Studio 创建和修改配置文件。这个配置工具叫做配置编辑器。配置编辑器与单独运行的配置控制台具有同样的功能,但是它使用 Visual Studio 属性窗口来显示应用程序块的属性,用错误列表来显示配置错误。整体上讲,配置编辑器和独立配置控制台都是配置工具。更多信息可以查看 Enterprise Library 配置工具。下面描述一些配置工具的活动将帮助你使用配置工具:
-
可以使用配置工具创建、修改标准和的.NET Framework <appSettings>节。更多信息,请参阅配置<appSettings>。
-
可以用配置工具调整应用程序块的配置为特定的运行时环境。更多信息,请参阅定制运行时设置。
-
可以使用配置工具加密和解密配置节中的数据。更多信息,请参阅加密配置节数据。
-
单独的应用程序块的改变
单独的应用程序块的重要改变交在以下节中描述。它们讨论了数据访问、异常处理和日志应用程序块的改变。
数据访问应用程序块
2007年5月发行的数据访问应用程序块包括下列改进:
-
包括一个新类
SqlCeDatabase
,它允许你使用 SQL Server CE。这是一个 SQL Server 轻量级的、内部过程(in-process)的版本,包含了相关数据库的基本功能。 -
包括一个
Database.UpdateDatabase
方法的重载,它带有updateBatchSize
参数。设置updateBatchSize
参数为正整数将导致DataAdapter
对象将以指定大小的块发送修改到数据库。这减少了数据库回发的次数。
更多信息,请参阅数据访问应用程序块文档。
异常处理应用程序块
2007年5月发行的异常处理应用程序块包括下列改进:
-
异常处理应用程序块可用于在 Windows Communication Foundation (WCF) 应用程序的服务接口上实现异常屏蔽。
ExceptionShieldingAttribute
可以被定义一个服务实现类上,以调用部署在服务边界上的异常。FaultContractExceptionHandler
可用于映射异常为失败契约以防止返回的敏感信息给了不可信的调用者。 -
ExceptionPolicy.HandleException
方法有了一个新的重载,它调用异常处理策略,在一个输出参数中返回结果异常来代替抛出结果异常。 -
Wrap 和 Replace 异常处理程序包含一个附加的配置属性,它允许你指定在外部资源中的异常信息而不是直接在配置文件中的。此功能可用于异常信息的本地化。
更多信息,请参阅异常处理应用程序块文档。
日志应用程序块
2007年5月发行的异常处理应用程序块包括下列改进:
-
现在包括一个 Rolling Flat File Trace Listener 。这个跟踪监听器在当前日志文件超出预定义的时间或大小时创建一个新的日志文件。
-
现在包括一个 WCF 适配器,允许你记录 WCF 消息。
-
现在包括了一个
TimeStampToken
类的改进版本。日志应用程序块的早期版本只允许时间间隔记录为协道界时(UTC)。在这个版本中,时间间隔令牌当前支持一个local:前缀,以指出时间间隔以本地时间显示。更多信息,请参阅跟踪监听器属性。 -
包括一个
ReflectedPropertyToken
类。日志应用程序块的这个发行支持一个新的格式化令牌,允许记录在定制类上的定制属性,这个类派生自LogEntry
类,或者是对它的修改。更多信息,请参阅扩展和修改日志应用程序块。
更多信息,请参阅日志应用程序块文档。
Enterprise Library 的添加
Enterprise Library 3.1 包括二个新的应用程序块,二个向导包,和集成到 Visual Studio 中的配置编辑器。下面将对它们进行描述:
验证应用程序块
验证应用程序块允许开发人员生成用于他们的应用程序的验证规则。它提供了下列好处:
-
它提供一个为业务对象定义验证规则的通用方法,以允许它们在应用程序中跨各层中使用。
-
它提供了一个通用验证规则类型集,以及让开发人员容易的定义自己的规则类型的能力。
-
提供了使它易于集成验证应用程序块到 ASP.NET、Windows 窗体和 WCF 中的技术适配器。
更多信息,请参阅验证应用程序块文档。
策略注入应用程序块
策略注入应用程序块允许开发人员指定在一个策略集条目中的对象的横切( corsscutting )行为。横切关系是普通的跨越多个对象的必要任务、特征或处理。例如日志、授权、验证和度量。一个策略是一系列处理程序的组合,处理程序在客户代码调用类的方法,以及带有基于属性的异常策略时执行,一系列的配置方法选择类和类成员(方法和属性)为应用程序块加上处理程序。策略注入应用程序块的目的是分离核心和横切关系,并最少化与实现普通特性关联的潜在问题。
策略注入应用程序块提供了一个 ready-built 解决方案,它易于在新的或已存在的应用程序中实现,特别是在已利用 Enterprise Library 的应用中。它与这些应用程序块的预构建处理程序一起加快在使用 Enterprise Library 时的开发,同时帮助管理横切关系。开发人员也可以创建自己的处理程序和策略,以实现几乎任何所需要的用于它们的对象的方法和属性的拦截处理。
更多信息,请参阅策略注入介绍。
强命名向导包
Enterprise Library 的这个发行包括了一个新的强命名向导包,它与Visual Studio 进行了集成。它自动化了项目的强命名集处理,也可以修改任何[InternalsVisibleTo] 属性以包含一个公开钥匙。
更多信息,请参阅强命名 Enerprise Library 程序集。
应用程序块软件工厂
应用程序块软件工厂提供的自动化的、写入的向导,这个向导简化了构建定制的应用程序块和应用程序块提供程序类的过程。应用程序块软件工厂包括不同任务的向导自动方法。如:
-
创建一个新的应用程序块
-
创建一个新的提供程序库
-
创建一个用于 Enterprise Library 应用程序块的类型化或无类型的提供程序
-
创建一个新的类型化的或无类型的提供程序(通用的)
-
转换一个无类型提供程序为一个类型化的
-
创建一个新的提供程序工厂和基类
-
创建一个新的设计时提供提供程序基节点
-
创建一个提供程序设计时节点
更多信息,请参阅应用程序块软件工厂文档。