NHibernate 3.0.0.GA正式发布了

2010-12-05 21:27

NHibernate 3.0.0.GA正式发布了

by

at 2010-12-05 13:27:03

original http://news.cnblogs.com/n/83509/

  发布

  2010年12月4号Fabio Maulo发布了NHibernate 3.0.0.GA正式版本。

  下载地址

  你可以到这里下载NHibernate 3.0.0.GA,基于.Net3.5平台,具体文件如下。

  • NHibernate二进制文件:NHibernate-3.0.0.GA-bin.zip
  • NHibernate参考文档:NHibernate-3.0.0.GA-reference.zip
  • NHibernate源码:NHibernate-3.0.0.GA-src.zip

  特性介绍

  NHibernate 3.0.0版本历经Alpha1、Alpha2、Alpha3、Beta1、Beta2、RC版本,修复了200多个BUG,增加了很多新特性。下面我自己归类总结一下这些新特性吧。

  程序集部分

  重写了日志模块,NHibernate 3.0.0.GA无需依赖log4net.dll程序集了。

  Castle的bytecode-providers:使用2010年11月15号发布的2.5.2正式版本,即Castle.Core.dll程序集。

  Configuration部分

  新增两种方式流配置(fluent-configuration)和lambda表达式配置(lambda-configuration)配置SessionFactory。

  新增对WCF的支持,提供WcfOperationSessionContext,我们可以直接配置"current_session_context_class"为"wcf_operation",直接在WCF中应用NHibernate。

  在Configuration类中新增了AddDeserializedMapping(HbmMapping mappingDocument, string documentFileName)方法,可以直接解析HbmMapping,我们可以选择不使用xml文件Mapping。

  Mapping部分

  Fabio Maulo完全重构了NHibernate.Cfg.MappingSchema部分,提高了性能,另外Fabio Maulo设计了一个配置ORM工具——ConfOrm,解析Domain结构,按照模式适配器转换成HbmMapping类。当然了,ConfOrm不是NHibernate的一部分,我们需要另外单独下载。我之前写一些文章介绍了这个工具,参考下面分享。

  Query部分

  在NHibernate 3.0.0版本中,新增了Linq Provider和strongly typed query API (QueryOver)两种查询方式。

  QueryOver是Lambda表达式方式的条件(Criteria)查询,可读性强且支持property-renaming特性。

  Linq是由Steve Strong贡献者开发的,完全基于AST的Linq Provider实现。

  其他

  除了上面可以归类的新特性,还提供了很多新特性,我先来列举一下:

  属性延迟加载和No Proxy关联特性:它仅支持Castle的bytecode-providers,不支持Spring.Net和LinFu。

  内置hbm2ddl工具。

  还有其他特性不一一列举。以后博文介绍。

  信息分享

  博文和站点

  NHibernate官方站点

  NHibernate在线参考文档已经更新至NHibernate 3.0.0版本,具体修改了一些错误和增加了QueryOver章节。

  博客园NHibernate专题

  NHibernate3剖析系列文章

  ConfORM实战系列文章

  NHibernate新书:NHibernate 3.0 CookBook

  工具

  HQL Language Service for Visual Studio:为我们编写HQL查询提供了智能提示和语法验证检查功能。

  NHibernate Profile:可视化NHibernate性能检测优化工具。

  Visual NHibernate:可视化设计和映射工具。

  Mindscape NHibernate Designer:VS设计工具,类似于EF设计器。

  未来

  据我了解的情况来看,将来的版本发布预计一两个月后会发布3.0.1版本,然后就升级至.Net4平台开发NHibernate 4版本,主要就是逐步改写内部代码去掉Iesi.Collections.dll,使用.Net4提供的ISet集合和添加一些新功能,比如Duck Typing等。

  还有NHibernate源码将迁移到CodePlex网站,使用Hg版本控制。

  本文链接:http://news.cnblogs.com/n/83509/

  程序员找工作,就在博客园

  每天10分钟,轻松学外语