3.1 Enterprise Library 内核

原创 2007年09月29日 17:16:00

版权所有(c) 2007  Dorian Deng。署名 共享 非商用。
转载请注明出处:http://blog.csdn.net/doriandeng/archive/2007/09/29/1806733.aspx

图3.1说明了组成 Enterprise Library 的应用程序块之间的依赖关系

图 3.1. 程序块之间的依赖

所有的应用程序块都被设计为只有很少的依赖,这样他们就可以单独与其他的应用程序块一起使用,所有应用程序块都依赖于 Enterprise Library 内核,它是由以下子系统组成的逻辑组:

  • Common 程序集,包括度量工具

  • 配置辅助类、设计时组件和 Enterprise Library 配置控制台

  • ObjectBuilder 子系统

下面章节描述了这些子系统。

Common 程序集

Enterprise Library 包含了一个名为 Common 的程序集,它包含由多个应用程序集共享的有用元素,任何使用 Enterprise Library 应用程序块的应用程序都必须引用此程序集。为了为所有应用程序块提供一个通用功能集,Common 程序集减少了各程序集间的依赖。

下面是一些用到 Common 程序集中因素的标准:

  • 元素不依赖于其他应用程序块。然而,它们依赖于在 Common 程序集中的其他元素。

  • 元素不依赖于任何持久化的状态。

  • 元素不依赖于任何第三方技术。

  • 元素没有暗示特定的应用模型,它们在任何应用模型中被同等使用。例如,元素在智能客户端和 Web 服务中呈现同样的功能。

度量仪(Instrumentation)

每个应用程序块都有度量仪。下面是度量仪的类型:

  • 性能记数器

  • 事件日志事件

  • WMI(Windows 管理度量仪)事件

度量仪(Instrumentation) 类是 Enterprise Library 内核的一部分,并放置在 Common 程序集中。可以在应用程序中重复使用此代码。

默认情况下,度量仪是不可用的,但可以使用 Enterprise Library 配置控制台启用每种度量类型。如果有管理权限,也可以使用 Installutil.exe 程序来安装度量仪。

绝大多数的依赖都封装到了单独的提供程序中。例如,异常处理应用程序块可以使用日志应用程序块来发布异常信息,但这不是必要的。可以选择发布异常信息到其他源中,如事件日志,或者提供自己的日志提供程序来扩展异常处理应用程序块。

配置 Helper 类和设计时组件

配置使用 System.Configuration命名空间,这使易于带配置文件或不带配置文件使用应用程序块。工厂从包含在配置文件中的数据创建应用程序块对象。可以使用可选的别的而不仅是 XML 配置文件做为配置源。例如,可以使用SQL Server 数据库。也可以使用带原始数据类型的构造函数而不使用配置文件来创建对象。

为了支持在 Enterprise Library 的扩展性,配置包括了除在 System.Configuration 命名空间中的那些类以外的 helper 类。这些类型支持多态集合、泛型集合和配置源。这些增强需要基于依赖注入模式而不是提供者模式的配置,就如在 System.Configuration 中的情况。

配置控制台允许修改应用程序块的配置而不用直接编辑 XML 配置文件,当前发行与早期发行的表现类似。可以使用设计时组件,组件被配置控制台与应用程序和创建的应用程序块一起使用,这将给用户配置控制台使用的相似的经验。

ObjectBuilder 子系统

ObjectBuilder是一个在 Enterprise Library 和组合用户接口应用程序块之间共享的子系统。Enterprise Library 将 ObjectBuilder 子系统用于如注射配置到程序块类中以及连接度量类到应用程序块等任务。

相关文章推荐

在数据库访问项目中使用微软企业库Enterprise Library,实现多种数据库的支持

在我们开发很多项目中,数据访问都是必不可少的,有的需要访问Oracle、SQLServer、Mysql这些常规的数据库,也有可能访问SQLite、Access,或者一些我们可能不常用的PostgreS...

C#利用微软企业库Enterprise Library操作mysql数据库

在C#项目中,很多时候到要用到Enterprise Library。这里只是用一个很简单的小例子来演示一下Enterprise Library在VS2010中操作mysql数据库的流程。 1,利用E...

DbHelperSQL Enterprise Library

转自:http://blog.csdn.net/litp/article/details/1495802 Enterprise Library 2.0很多人都已熟悉,有的人也在很多项目里做了应用, ...

C#日志扩展包之Microsoft Enterprise Library - Logging Application Block之配置

配置Logging Application Block可以使用两种方法:1、使用app.config文件配置,xml编辑器或Enterprise Library Configuration Tool;...

Enterprise Library 企业库

1. Enterprise  Library 企业库介绍         是微软模式与 实践团队 开的应用程序块        安装Enterprise  Library           ...

使用Microsoft Enterprise Library开发前配置

1.新建解决方案。我们打开Visual Studio2010,选择新建项目,在其他项目类型中选择Visual Studio解决方案并对其进行命名(例如:Test),将这个解决方案保存到想要存放的位置,...

WCF后续之旅(8):通过WCF Extension 实现与MS Enterprise Library Policy Injection Application Block 的集成

WCF后续之旅(8):通过WCF Extension 实现与MS Enterprise Library Policy Injection Application Block 的集成 ...
  • cpcpc
  • cpcpc
  • 2011年01月18日 09:06
  • 496

Microsoft Enterprise Library 5.0 系列(五) Data Access Application Block

企业库数据库访问模块通过抽象工厂模式,允许用户通过简单的配置选择不同的数据库作为程序的数据源,大大解决了切换数据库时带来的麻烦.因为我本机只安装了SQL Server 2005,所以在此只做SQL的演...

Enterprise Library 5 数据访问之一(初级)体验篇:直接返回业务对象数据

功能描述:在执行玩一条sql语句后如果直接将结果的DataTable或Datsset,DataReader这些东西省掉直接返回我们一个业务对象岂不是更爽。Enterprise Library 5 已经...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:3.1 Enterprise Library 内核
举报原因:
原因补充:

(最多只允许输入30个字)