支持Visual Studio 2008和.NET 3.5的企业类库4.0

企业类库4.0(EntLib 4)发布了,采用的是Microsoft Public License (Ms-PL)协议发布,和之前的版本的相比较更开放,微软的各项共享源代码方面的协议介绍可参看Microsoft 的 OpenSource Licence。这个版本的最大亮点是把IOC框架集成Unity进来了。

1、也许你还不知道Unity是微软的模式与实践团队开发的轻量级,可扩展的依赖注入容器,支持依赖注入的构造函数注入,属性注入,还支持方法调用注入。如果你有使用其他的IOC容器的经验,例如Castle Windsor, SpringFramework.NET, StructureMap等。Unity的资料可参看Unity Application Block 发布微软名为Unity的依赖注入Application Block发布了。可以通过Unity生成所需要的企业类库对象,并把企业类库对象注入到你的业务对象。这样可以很好的解耦组件之间的依赖关系,在企业类库所提供QuickStart上都有相应的使用Unity的例子。

2、支持WMI2.0,EntLib 4中,所有的应用代码块的主要工作类型都有自己独立的WMI类型对象,运行监控机制可以用类似SQL语句的方式直接检索运行组件的性能计数或配置属性情况,企业应用中运营监控是一项非常重要的工作,随着物理层IT环境的不断变化以及为了满足用户可用性指标提供的运行监控机制,很多企业应用运行机制都是后来“补”齐的,EntLib4这项设计非常值得我们学习。

3、支持部分信任(partial trust),之前版本的Entlib一直使用完全信任(full trust)。部分信任对于ASP.NET的运行环境是非常重要的一个特性了

4、EntLib 4的缓存程序块进行了重构,现在支持用户自定义实现CacheManager,抽象出来了一个缓存管理接口Microsoft.Practices.EnterpriseLibrary.Caching.ICacheManager,也就很容易扩展集成分布式缓存,.NET框架下有好几个分布式缓存组件,其中也有几个开源的分布式缓存组件memcached分布式的内存对象系统indeXus.Net SharedCache

5、加密块支持许多性能计数器了,例如Total Hash Comparisons, Total Hash Mismatches, Total Hash Operations, Total Symmetric Decryptions, 和Total Symmetric Encryptions.

6、数据访问模块也增加了许多性能计数器,这对于开发企业应用来说也是非常重要的,例如Total Commands Executed, Total Commands Failed, Total Connections Opened, 和Total Connections Failed等等。

7、异常处理模块为Logging Handler增加了一个属性UseDefaultLogger和很多性能计数器,例如Total Exceptions Handlers Executed 和Total Exceptions Handled

8、策略注入的ObjectValidator现在支持规则集,CallHandler的执行顺序现在很容易的控制了,现在有一个Order属性进行设置。关于Policy Injection的更多资料参看Artech同学的 Enterprise Library栏目

9、Security'模块增加了许多性能计数器,例如Total Authorization Requests, Total Authorization Requests Denied, 和Total Security Cache Reads。

10、validate模块支持使用多个规则集验证一个对象。

博客园内各兄弟对企业类库4.0的帖子:

Unity 1.1 及 Enterprise Libaray 4.0 for VS2008 新特性及关于Enterprise Library的一些数字

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏码神联盟

碎片化 | 第四阶段-28-Struts2框架概述以及原理图解-视频

如清晰度低,可转PC网页观看高清版本: http://v.qq.com/x/page/o05656uacql.html Struts2 概述 Strut...

4296
来自专栏菩提树下的杨过

纯手工搭建JSF开发环境(JSF2.2+maven+weblogic 12c/jboss EAP 6.1+)

JSF 2.X因为种种原因(我个人觉得主要是因为推出太晚),再加上EJB2之前的设计过于复杂,引起很多开发人员对官方解决方案的反感,即使EJB3后来做了大量改进...

1421
来自专栏玄魂工作室

Hacker基础之工具篇 braa

但与net-snmp的snmpget或snmpwalk不同,它可以同时查询数十个或数百个主机,并且可以在单个进程中查询

1503
来自专栏xingoo, 一个梦想做发明家的程序员

AngularJS 国际化——Angular-translate

对于一个用户群面向全球的的应用来说,不得不考虑国际化的问题。当然,即便是刚刚起步的小应用,如果有心搞大,也应该提前设计国际化的方案。 本篇讲述使用Angul...

3098
来自专栏杂烩

SSM项目搭建之MyBatis 原

    MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了goog...

782
来自专栏菩提树下的杨过

spring cloud 学习(7) - 生产环境如何不停机热发布?

业务繁忙的系统,原则上是不允许停机的,那么问题来了,如果真有严重的bug要修复,不得不发布,怎么做到不停机发布,对业务无感知呢? eureka 提供了一系列re...

5009
来自专栏云端架构

【云端架构】网站运维之CDN链接鉴权示例入门(PHP)

链接时间戳格式和有效时间与鉴权KEY 要求跟腾讯云CDN链接鉴权 配置保持同步,服务器以CDN节点配置为基准。以上模板可以根据需要调整,但请不要过度依赖模板,努...

94212
来自专栏SpringBoot 核心技术

SpringCloud组件:Eureka服务注册中心的失效剔除与自我保护机制

Eureka作为一个成熟的服务注册中心当然也有合理的内部维护服务节点的机制,比如我们本章将要讲解到的服务下线、失效剔除、自我保护,也正是因为内部有这种维护机制才...

2.5K2
来自专栏程序你好

20个对Java程序员有用的开源库

优秀且经验丰富的Java开发人员的特点之一是对API的广泛了解,包括JDK和第三方库。我花了大量的时间学习API,特别是在阅读了 Effective Java ...

1832
来自专栏Linyb极客之路

工作流引擎之Activiti使用总结

在第一家公司工作的时候主要任务就是开发OA系统,当然基本都是有工作流的支持,不过当时使用的工作流引擎是公司一些牛人开发的(据说是用一个开源的引擎修改的),名称叫...

6704

扫码关注云+社区

领取腾讯云代金券