一起谈.NET技术,NHibernate 3.0.0.Alpha1 发布及新特性介绍

  发布

  刚刚NHibernate的Leader——Fabio Maulo发布了NHibernate 3.0.0.Alpha1版本,这是NHibernate 3.0.0的第一个公开测试版本。

  下载地址

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

  • NHibernate源码:NHibernate-3.0.0.Alpha1-src.zip
  • NHibernate二进制文件:NHibernate-3.0.0.Alpha1-bin.zip

  特性介绍

  NHibernate 3.0.0版本可以说是跨时代的一个版本,NHibernate贡献者们经过了一年的完善和测试,增加了非常多的新特性和修复很多BUG。下面我自己归类总结一下这些新特性吧。

  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,帮助我们“自动”实现Mapping,当然了,ConfOrm不是NHibernate的一部分,我们需要另外单独下载。

  Query部分

  在NHibernate 3.0.0版本中,新增了New Embebed Linq ProviderNew strongly typed query API (QueryOver)两种查询方式,那么NHibernate 3.0.0现在支持了7种查询方式。

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

  Linq是由Steve Strong贡献者开发的,完全基于AST的Linq Provider实现。在之前的NHibernate2.1.2版本中没有提供Linq功能,Ayende Rahien贡献者另外设计第三方NHiberante.Linq.dll(目前已经停止了维护),它是基于Criteria API的Linq Provider,主要功能是将简单的Linq表达式转化为Criteria API,所以存在很多天生的不足,现在我们可以完全抛弃这个第三方dll了,完全使用NHibernate3.0.0自带全新的Linq查询支持。

  其他

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

  属性延迟加载特性:这是我们一直以来梦寐以求的功能,NHibernate 3.0.0实现了,这里注意一下,它仅支持Castle的bytecode-providers,不支持Spring.Net和LinFu。

  No Proxy关联特性:这个功能和上面的差不多。

  内置hbm2ddl工具

  还有其他特性不一一列举,更多信息请参考发行文件。以后博文介绍。

  博文分享

其实,我之前介绍了有关NHibernate 3.0.0版本的新特性,其中NH剖析系列就是基于NHibernate 3.0.0版本的,下面列举一下分享下,以后会慢慢博文Query部分和其他部分特性介绍。

NH剖析:Configuration篇——SessionFactory的Properties之fluent-configuration配置

NH剖析:Configuration篇——SessionFactory的Properties之lambda-configuration配置

NH剖析:Configuration篇——SessionFactory的Cache之lambda-configuration配置

NH剖析:Mapping篇之ConfORM实战(1):概览

NH剖析:Mapping篇之Mapping概览

NH剖析:Mapping篇之集合映射基础(1):Set映射

NH剖析:Mapping篇之集合映射基础(2):Bag映射

NH剖析:Mapping篇之集合映射基础(3):List映射

NH剖析:Mapping篇之集合映射基础(4):Map映射

希望本文对你有所帮助。

时间: 2024-09-09 14:04:08

一起谈.NET技术,NHibernate 3.0.0.Alpha1 发布及新特性介绍的相关文章

NHibernate 3.0.0.Alpha1 发布及新特性介绍

发布 刚刚NHibernate的Leader--Fabio Maulo发布了NHibernate 3.0.0.Alpha1版本,这是NHibernate 3.0.0的第一个公开测试版本. 下载地址 你可以到这里下载NHibernate 3.0.0.Alpha1,基于.Net3.5平台,具体文件如下. NHibernate源码:NHibernate-3.0.0.Alpha1-src.zip NHibernate二进制文件:NHibernate-3.0.0.Alpha1-bin.zip 特性介绍 N

hibernate 3 和hibernate 4 的区别,4.0以上版本加入哪些新特性,有什么优势?

问题描述 hibernate 3 和hibernate 4 的区别,4.0以上版本加入哪些新特性,有什么优势? hibernate 3.6.10.Final 和 hibernate 4.3.8.Final 的区别, 解决方案 http://blog.csdn.net/iaiti/article/details/9336703 解决方案二: http://blog.sina.com.cn/s/blog_3e20fc040100yhzq.html

Android5.0中Material Design的新特性_Android

 Material Design简介 Material Design是谷歌新的设计语言,谷歌希望寄由此来统一各种平台上的用户体验,Material Design的特点是干净的排版和简单的布局,以此来突出内容. Material Design对排版.材质.配色.光效.间距.文字大小.交互方式.动画轨迹都做出了建议,以帮助设计者设计出符合Material Design风格的应用. Material Design设计语言鼓励大家使用充满活力的鲜艳色彩,并在同一界面建议使用三种色调,并保障有一个强色调,

Android5.0中Material Design的新特性

Material Design简介 Material Design是谷歌新的设计语言,谷歌希望寄由此来统一各种平台上的用户体验,Material Design的特点是干净的排版和简单的布局,以此来突出内容. Material Design对排版.材质.配色.光效.间距.文字大小.交互方式.动画轨迹都做出了建议,以帮助设计者设计出符合Material Design风格的应用. Material Design设计语言鼓励大家使用充满活力的鲜艳色彩,并在同一界面建议使用三种色调,并保障有一个强色调,强

一起谈.NET技术,.NET 4.0 之 Dynamic 动态类型

一..NET4.0主要新特性 .NET4.0在.Net3.5基础上新增的主要特性有:可选参数.命名参数和Dynamic.具体请阅生鱼片的这篇博文.这里我们着重讲解C#4.0的Dynamic特性,对于其他特性大家可以在VS2010内尝试一下.总之.Net在不断进步中. 二.ExpandoObject普通应用 ExpandoObject 类,"需引用System.Dynamic命名空间" .请看以下代码: dynamic Customer = new ExpandoObject();Cus

Flash8.0专业版及播放器新特性

相关文章: Dreamweaver 8 新功能简介 Fireworks 8 新功能简介 Macromedia Studio 8开始网上预订送背包 Flash 8.0 分为两个版 Flash Professional 8 和 Flash Basic 8,之前我们所猜测的 Flash MX 2006 是不存在的. Flash Prefessional 8 1,滤镜效果 Flash Professional 8 滤镜可以让你给影片剪辑(MovieClip)添加特殊效果,例如阴影,模糊等等(滤镜同样可以

J2SE5.0中最有趣的新特性:注释(annotation)

本文为原创,如需转载,请注明作者和出处,谢谢! 本文曾发表于IT168:http://tech.it168.com/j/e/2006-09-29/200609291054707.shtml     本文将向你介绍J2SE5.0中的新特性之一:注释.本文将从什么是注释:J2SE5.0中预定义的注释:如何自定义注释:如何对注释进行注释以及如何在程序中读取注释5个方面进行讨论. 一.什么是注释     说起注释,得先提一提什么是元数据(metadata).所谓元数据就是数据的数据.也就是说,元数据是描

JSR 286 Portlet的新特性,第1部分: Portlet 2.0新特性介绍

关于本系列 本系列文章专门针对具有 JSR 168 Portlet 开发基础,并且想了解 JSR 286 Portlet 新特性和开发流程的开发人 员.在学习完本系列后,您将了解相对于 JSR 168 Portlet,JSR 286 Portlet 究竟提供了哪些增强功能, 以及这些新增特性在实际开发 中的应用. 第 1 部分将简单回顾 JSR 168 Portlet, 并列出了 JSR 286 Portlet 的新增内容. 第 2 部分和第 3 部分将 通过在 Apache Pluto 2.0

Ruby on Rails 2.0的新特性介绍

万众瞩目的Ruby on Rails 2.0已经发布了,Rails框架在2004年诞生以来,一直保持着相当快的版本 升级速度:2005年发布了Rails1.0版本,2006年初发布Rails1.1版本,2007年初发布Rails1.2版本,而还 没有等到2008年,在2007年圣诞前夕的12月6日,Rails2.0已经发布. Rails框架每个大的版本升级都给我们带来了相当多的新功能,新惊喜.Rails1.0带给我们完善的单元 测试和集成测试:Rails1.1带给我们DataBase Migra