微软企业库学习手册

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、什么是企业库?

企业库包含一系列应用程序模块和核心架构。这些高复用的组件旨在帮助开发者解决一些共同的企业开发问题。

企业库同时提供高可配置的特性,使我们管理重复的工作更加容易,例如我们知道的在应用的很多地方发生的横切关注点。包括像日志记录、缓存、异常管理等。另外,它提供的依赖注入容器能够简化和分解你的设计,使他们更加可实验和容易理解,帮助你创建更加高性能的设计和各种应用。

二、使用企业库的3个简单步骤:

1.引用和配置你需要的程序集。

2.通过企业库配置应用。

3.在你的代码中创建和使用企业库对象。

三、企业库的好处:

应用模块帮助解决开发者从一个项目到另一个项目面对的共同问题。他们的设计封装了微软推荐的做法,这些都是基于微软框架的应用开发。例如,数据访问应用模块提供了对访问最频繁使用的特征。在某些情况下,应用模块还添加了一些基础类库没有直接提供的相关功能。

四、企业库的目标:

1.一致。所有的企业库模块都坚持一致的设计模式和实现方式。

2.可扩展性。所有的应用模块包括定义扩展点,允许开发人员通过添加自己的代码定制应用模块的行为。

3.易用性。企业库提供了许多实用性的东西,包括一个图形化配置工具,简单的安装过程,完成的文档和示例。

4.集成。企业库应用模块被设计得能够一起很好的工作,并且也被这样测试过。但是你不必一起使用他们。我们可以单独使用这些应用模块,同时这些应用模块之间也有些依赖,比如在企业库核心和Unity中的一些通用组件。

上面是企业库的基本概念,理解了企业库的相关知识后,我们可以开始来安装企业库了1、下载地址:,安装后就可以使用了。

这次相比的最大改动就是整个配置工具采用了WPF重新构建和实例化和管理对象生命周期的全依赖注入的实现,同时支持VS2008SP1和VS2010,话说虽然这次的配置工具变化挺大的,但是一旦熟悉了就觉得比的好,因为可以清楚的看见每个模块的之间的依赖关系。

一、Unity和对象生成器的整合

在这个版本中,用于创建对象的基本技术是一个单一的依赖注入容器,默认的是Unity。你可以使用容器生成企业库对象的实例并注入到其他的对象。企业库提供一个标准的接口从Unity容器中来获得定义在企业库配置中的对象的实例,如SqlDatabase或LogWriter.另外,注入友好的实例门面处理静态门面之外是有效的,因为静态门面不能用注入,但是为了向后兼容以前的版本而存在。在本版本中的示例中都是用依赖注入,但是以前版本中是用的静态工厂类和静态门面在这个版本中还是支持的。对象生成器,一个低版本的依赖注入机制在这个版本中被归入Unity中,在项目中不再需要单独引用对象生成器集。

支持Unity容器,必须引用一个被包含在企业库中的程序集。如果要使用一个第3方的依赖注入容器,必须直接实现IServiceLocator接口或者通过适配器实现。

二、影响所有模块的变化:

1.在企业库中主要修正是使用依赖注入机制。所用的应用模块以及核心系统都是用依赖注入机制,并使用Unity作为默认的依赖注入容器,来创建和管理企业库对象。

2.自主容器的实现通过实现Common Service Locator项目提供的IServiceLocator 接口来完成。

3.由于错误配置引发的错误将提供更多有用的错误信息。

4.配置系统公开了一个fluent接口,用来为单个对象或整个应用创建和填充配置源。fluent API使得为各种情景创建配置源更加容易。

类被删除.

6.一些配置元素有默认值,可能不同于以前版本的隐式默认值.

7.企业库现在允许你通过另一个配置文件合成一个混合配置文件.

8.可以可通过不同的配置文件读取不同的配置信息.

9.企业库不支持XAML浏览器应用程序(XBAP).

标志为了像前兼容仍然存在企业库中,但是在中是被忽略的,而且将来会被删除.

11.改进式的安装允许你只安装部分应用模块及配置工具.

12.在以前版本中要做统一集成,必须添加核心企业库的扩展和每个模块的扩展。现在如果你只需要直接访问容器,那么只有核心扩展是必须的。单独模块将自动支持。

旧的功能为了保持像前兼容仍然保留,但已经不起作用。

的签名已经改变,参数由3个变为2个。

14.快速入门不再包含在主安装程序中。

三、Breaking变化:

1.企业库现在抛出了一个配置错误ActivationException,之前是。这包括试着解决没有配置信息错误的一个实例提供者。

2.以前版本在获取应用模块错误时抛出BuildFailedException错误,现在对于所有的应用模块都抛出ActivationException

3 .之前的版本,在讲一个空源传到容器来调用容器的时候,会抛出ArgumentNullException,现在抛出NullReferenceException

不再是一个单独的程序集,而是集成到了Unity集合中,在项目中也不需要引用。

支持已经从企业库中删除,除了在logging模块中的WMI跟踪监听器。

6.如果你没有关闭DbDataReader,可能会导致随机的、很难在您的代码中找到的错误,尤其是当你正在一个由TransactionScope上下文创建的隐式事务下操作时。

你必须始终确保您的应用程序及时关闭DbDataReader,无论是明确的方法关闭或是逼迫DbDataReader释放。

7.如果你使用validator 特性必须引用程序集。

8.为方法签名已更改。该方法有两个参数,而不是3个参数

集合的功能和其他设计时集合被一个新的集合代替。

10,性能计数器异常从移到PolicyInjection 程序集。

11.包含在Policy Injection Application Block中的CachingCallHandler有未处理的安全漏洞,已经从Policy Injection Application Block中移除。

四、配置工具的改变:

1.新的企业拥有一个新的GUI库和一个元数据驱动的可扩展性模。

2.支持向导

3.新的类型选择。

4.不支持对依赖策略的Environmental Overrides 。日志模块处理Categories。

五、缓存模块变化:

1.缓存清除已被完全重写的性能优化

六、数据库访问模块:

相关文档
最新文档