InfoQ

新闻

微软正式发布支持Visual Studio 2008的Enterprise Library 4.0

作者 Robert Bazinet 发布于 2008年6月1日 上午11时2分

社区
.NET
主题
Enterprise Application Blocks
标签
依赖注入,
微软

微软发布了支持Visual Studio 2008的新版本Enterprise Library 4.0,同时也发布了他们的依赖注入容器Unity应用程序块的1.1版本。

模式与实践团队的产品经理Grigori Melnik宣布发布Enterprise Library 4.0Unity 1.1更新,详细描述了所有新特性。

MSDN开发中心的新闻稿解释了这个版本对开发人员的意义:

此次发布的Enterprise Library包括了一个应用程序块(参见Unity 应用程序块)。Unity是一个轻量级,可扩展的依赖注入容器,支持构造函数,属性和方法调用注入。你可以单独使用Unity应用程序块的依赖注入机制而不需要安装Enterprise Library。不过,此次发布的Enterprise Library集成了Unity,提供了一种新的方式创建Enterprise Library对象。

几个现有的应用程序块的功能上也有改进。下面章节讨论在这个版本中的变化。此外本次发布的版本支持Visual Studio 2008,Windows管理规范(WMI)2.0版和微软.NET Framework 3.5。

Enterprise Library 4.0

Enterprise Library 4.0版本包含以下应用程序块:

  • Caching Application Block . 开发人员可以使用这个程序块在应用程序中应用缓存. 支持可插拔的缓存提供者(Provider)。
  • Cryptography Application Block . 开发人员可以把这个应用程序块在应用程序中应用散列和对称加密。
  • Data Access Application Block . 开发人员可以把这个应用程序块作为应用程序的标准的数据库访问功能。
  • Exception Handling Application Block . 开发人员和决策者可以使用这个应用程序块为企业应用程序各层异常处理制定一致的策略。
  • Logging Application Block . 开发人员可以使用这个应用程序块为他们的应用程序提供日志记录功能。
  • Policy Injection Application Block . 开发人员可以使用这个应用程序块在应用中提供拦截策略,可以用它来简化整个系统的通用功能的实现,例如日志记录,缓存,异常处理以及验证。
  • Security Application Block . 开发人员可以用这个应用程序块为他们的应用程序提供授权和安全的缓存功能。
  • Unity Application Block . 开发人员可以使用这个应用程序块作为一个轻量级和可扩展的依赖注入容器,支持构造函数,属性和方法调用注入。
  • Validation Application Block . 开发人员可以使用个应用程序块为他们的应用层的业务对象创建验证规则,可以在应用程序的各个层里面使用。

Enterprise Library 4.0有什么新特性?

  • 集成Unity应用程序块
  • 支持Windows管理规范(WMI)2.0和改进性能计数器
  • 性能提升(特别是在日志记录应用程序块)
  • 可插拔的缓存管理
  • 支持Visual Studio 2008
  • Bug修复

目前已发布的所有应用程序块的快速入门:

 Enterprise Library 4.0可以从模式与实践开发者中心下载。

Unity 1.1

Unity是一个集成Enterprise Library的依赖注入容器,但是不依赖于Enterprise Library:

Unity是一个轻量级,可扩展的依赖注入容器,支持构造函数,属性和方法调用注入。你可以使用Unity和企业类库来生成Enterprise Library对象和你自己的自定义业务对象。 但是Unity应用程序块和Enterprise Library所包含的其他几个应用程序块在几个方面是不一样的:

  • 你可以单独使用Unity应用程序块的依赖注入机制而不需要安装Enterprise Library。
  • Unity应用程序块可以通过配置文件来配置容器,但也支持通过代码在运行时动态注册依赖关系。
  • Unity应用程序块不依赖于Enterprise Library的核心和Enterprise Library的配置系统。它有自己内建的机制来读取配置信息,虽然配置也可以来自Enterprise Library的配置文件。

Unity 1.1有什么新特性?

  • 清理了所有过时的ObjectBuilder代码。
  • 修复bug:在生命周期管理器中使用泛型类型。
  • 修复bug:RigisterType覆盖了RegisterInstance。
  • 提升了解析单件对象的性能。
  • 公开了一些内部类,更容易编写类型的扩展(那些自定义的如何解析依赖对象)。
  • 改进了值解析失败时的出错信息。

本次发布还没有实现的特性?

  • 拦截机制还没有实现,这是Unity最高优先级的需求。
  • 如果需要AOP功能,依旧可以使用策略注入应用程序块。
  • 没有提供支持DI配置的工具。

Unity 1.1可以从模式与实践开发者中心下载。

David Hayden提供了一个Enterprise Library 4.0 数据访问程序块集成Unity 控制反转(IoC)的播客并对如何使用给出了一个很好的介绍。

查看英文原文:Microsoft Enterprise Libarary 4.0 Released for Visual Studio 2008

深度内容

和Google互补的搜索引擎Wolfram|Alpha

Wolfram|Alpha与Google究竟是什么关系,Wolfram|Alpha自己是如何定位的?Wolfram|Alaph在多大程度上是语义网搜索呢?InfoQ中文站就等等这些问题采访了Wolfram研究公司中国区商务经理王翔。

SOA契约成熟度模型

本文说明了所推荐的契约版本管理设计策略是如何与SOA成熟度模型发生联系的。文章目的是为实现版本管理和可组合性提供一个路线图。

数据服务简介

Vijay Narayanan在这篇文章中对数据服务的几个方面进行了介绍,它们都是SOA实践者和数据架构师感兴趣的内容。本文对数据服务的几个方面进行了介绍,包括需求定义,基本原理和好处、范围、开发以及消费模式。

分块云计算

在本文中,Jimmy Nilsson描述了一种他在过去数年间观察到的一种正在缓慢成长的架构风格,他把这种风格称为“分块云计算”。

豆瓣网技术架构变迁

罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。在本次演讲中,豆瓣的首席架构师洪强宁将与大家一起分享从上线时的单台服务器架构开始一直到现在的豆瓣架构变迁历程。

融合思想:深入探索S#arp架构

Billy McCafferty展示了S#arp架构,它在ASP.NET MVC框架的基础上,荟萃了当今的最佳实践,应用在ASP.NET Web应用程序的架构设计中。

王雷谈开源以及新兴市场计划

中国作为新兴市场中的新兴市场,是Sun在美国之外实施SSE(SUN Startup Essentials)项目重点关注的地区。在QCon Beijing 2009期间,InfoQ中文站有幸对此项目的负责人王雷先生进行了采访,探讨了关于开源、新兴市场、SSE等话题。

使用HTML5构建下一代的Web Form

HTML5 是由 WHATWG发起的,最开始的名称叫做Web Application 1.0,而后这个标准吸纳了Web Forms 2.0的标准,并一同被W3C组织所采用,合并成为下一代的HTML5标准。