一起谈.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 Provider和New 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映射
希望本文对你有所帮助。
一起谈.NET技术,NHibernate 3.0.0.Alpha1 发布及新特性介绍相关推荐
- python3.8.5 run-Python 3.8.0 正式版发布,新特性初体验
北京时间 10 月 15 日,Python 官方发布了 3.8.0 正式版,该版本较 3.7 版本再次带来了多个非常实用的新特性. 赋值表达式 PEP 572: Assignment Expressi ...
- python3字符串转数字_Python 3.6.0 正式版发布附新特性说明
计划在上周发布的Python3.6.0推迟到昨日发布,你可以点击这里下载最新版的Python3.6.0,那么此次的新版本带来了哪些新的特性呢?下面我们去看一下Python的官方文档. What's N ...
- python 3.8.0安卓_Python 3.8.0 正式版发布,新特性初体验
北京时间 10 月 15 日,Python 官方发布了 3.8.0 正式版,该版本较 3.7 版本再次带来了多个非常实用的新特性. 赋值表达式 PEP 572: Assignment Expressi ...
- hadoop3.0新特性介绍
hadoop3.0新特性介绍 1. 基于jdk1.8(最低版本要求) 2. mr采用基于内存的计算,提升性能(快spark 10倍) 3. hdfs 通过最近black块计算,加快数据获取速度(块大小 ...
- 蚂蚁金服 SOFAArk 0.6.0 新特性介绍 | 模块化开发容器...
SOFAStack Scalable Open Financial Architecture Stack 是蚂蚁金服自主研发的金融级分布式架构,包含了构建金融级云原生架构所需的各个组件,是在金融场景里 ...
- android5.0及以上版本的新特性
android5.0及以上版本的新特性 Android5.0 Android6.0 Android7.0 Android8.0 Android9.0 Android5.0 Android 5.0 除了 ...
- android5.0后新特性修改标题头,Android5.0中Material Design的新特性
Material Design简介 Material Design是谷歌新的设计语言,谷歌希望寄由此来统一各种平台上的用户体验,Material Design的特点是干净的排版和简单的布局,以此来突出 ...
- Spring 6.0 堪称最强!新特性,惊爆了!
出品 | OSC开源社区(ID:oschina2013) Spring 6.0 发布了首个 RC 版 公告写道,Spring Framework 6.0 作为重大更新 目前 RC1 要求使用 Java ...
- Portlet 2.0 新特性介绍(全)
第一部分 Portlet 2.0 新特性介绍 ====================================================================== 关于本系列 ...
最新文章
- Multithreading in Java
- Apache将整合Google Wave功能
- Android nomedia 避免图片等资源泄露在系统图库其中
- vue中弹窗input框聚焦_Vue 中如何让 input 聚焦?(包含视频讲解)
- WWDC 2013 Session笔记 - iOS7中的多任务
- C的function call與stack frame心得
- listview bcb 行的颜色_文明交通安全行手抄报简单又漂亮
- 制作HTML类型的email邮件 Background Images and CSS in HTML Email
- 心理软件测试自学,软件测试中的心理学
- 20135337——信息安全设计基础第八周学习笔记
- azure云数据库_在Azure Cosmos DB中使用PowerShell创建和删除数据库
- php如何打印png文件,我的php生成的png文件有什么问题?
- django基础知识之验证码:
- 可持久化线段树(主席树)总结及板子
- deeplearning.ai——构建循环神经网络
- PHP 实现文件上传 php配置
- Java编程练习题(涉及循环,函数等)
- 软件工程造价师和软件造价评估师有什么区别?
- Premiere 五套特效转场插件合集 FilmImpact Transition Packs V3.6.11
- 一款微信小程序商城项目(附源码)