随笔分类 NHibernate

随笔分类 -NHibernate

NHibernate3剖析:Query篇之NHibernate.Linq自定义扩展

2010-08-11 20:05 by 李永京, 1506 visits, 网摘, 收藏, 编辑
摘要:在NHibernate中,几乎所有的面向对象查询语言(HQL、Criteria、QueryOver)都是可扩展的,Linq也不例外。我们可以扩展自定义LINQ-provider并将LINQ扩展方法转换为SQL。 阅读全文

NHibernate3剖析:Query篇之NHibernate.Linq增强查询

2010-08-10 09:38 by 李永京, 1635 visits, 网摘, 收藏, 编辑
摘要:NHibernate.Linq除了提供标准查询运算符外,NHibernate.Linq还专门提供了NHibernate特有的两个增强查询方法,分别是立即抓取(EagerFetching)和查询缓存(QueryCacheable)。 阅读全文

NHibernate3剖析:Query篇之NHibernate.Linq标准查询

2010-08-09 08:20 by 李永京, 2291 visits, 网摘, 收藏, 编辑
摘要:NHibernate.Linq基于HQL AST分析器的Linq Provider,使用ISession接口的Query()扩展方法创建一个NHibernate.Linq查询。这篇利用单一对象学习下NHibernate.Linq最基本的标准查询。 阅读全文

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

2010-07-24 21:12 by 李永京, 3259 visits, 网摘, 收藏, 编辑
摘要:刚刚NHibernate的Leader——Fabio Maulo发布了NHibernate 3.0.0.Alpha1版本,这是NHibernate 3.0.0的第一个公开测试版本。NHibernate 3.0.0版本可以说是跨时代的一个版本,NHibernate贡献者们经过了一年的完善和测试,增加了非常多的新特性和修复很多BUG。这篇文章我也自己归类总结了这些新特性。 阅读全文

NHDay宣传视频

2010-05-18 18:53 by 李永京, 1043 visits, 网摘, 收藏, 编辑
摘要:官方主页:http://www.nhday.eu/ 更多NHDay消息:#nhday(来自twitter) 阅读全文

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

2010-05-12 21:56 by 李永京, 1801 visits, 网摘, 收藏, 编辑
摘要:我们在设计Domain时,有很多集合形式,我总是设计着各种各样的Domain不断尝试着各种集合形式。集合有所有Net基本类型、NHibernate自定义类型、组件、其他实体的引用等形式,那么在NHibernate中如何通过映射把Domain定义中的集合形式和数据库架构映射起来的呢。Mapping篇为大家介绍基本上所有的Mapping方式,大家学习NHibernate也有个比较"官方"的参考。 阅读全文

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

2010-05-12 10:33 by 李永京, 1660 visits, 网摘, 收藏, 编辑
摘要:我们在设计Domain时,有很多集合形式,我总是设计着各种各样的Domain不断尝试着各种集合形式。集合有所有Net基本类型、NHibernate自定义类型、组件、其他实体的引用等形式,那么在NHibernate中如何通过映射把Domain定义中的集合形式和数据库架构映射起来的呢。Mapping篇为大家介绍基本上所有的Mapping方式,大家学习NHibernate也有个比较"官方"的参考。 阅读全文

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

2010-05-10 21:33 by 李永京, 1631 visits, 网摘, 收藏, 编辑
摘要:我们在设计Domain时,有很多集合形式,我总是设计着各种各样的Domain不断尝试着各种集合形式。集合有所有Net基本类型、NHibernate自定义类型、组件、其他实体的引用等形式,那么在NHibernate中如何通过映射把Domain定义中的集合形式和数据库架构映射起来的呢。Mapping篇为大家介绍基本上所有的Mapping方式,大家学习NHibernate也有个比较"官方"的参考。 阅读全文

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

2010-05-08 20:48 by 李永京, 1821 visits, 网摘, 收藏, 编辑
摘要:我们在设计Domain时,有很多集合形式,我总是设计着各种各样的Domain不断尝试着各种集合形式。集合有所有Net基本类型、NHibernate自定义类型、组件、其他实体的引用等形式,那么在NHibernate中如何通过映射把Domain定义中的集合形式和数据库架构映射起来的呢。Mapping篇为大家介绍基本上所有的Mapping方式,大家学习NHibernate也有个比较"官方"的参考。 阅读全文

NHibernate3剖析:Mapping篇之Mapping概览

2010-04-22 19:36 by 李永京, 2011 visits, 网摘, 收藏, 编辑
摘要:NHibernate作为典型的ORM工具,我们使用时通常是先定义Domain,再为Domain映射数据库关系,NHibernate映射是使用XML文件形式的。本篇从整体上了解下NHibernate Mapping处理过程及我们编写方式。 阅读全文

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

2010-04-21 21:37 by 李永京, 1962 visits, 网摘, 收藏, 编辑
摘要:对于ORM(Object Relational Mapping)我们太熟悉了,但是我们从另一个角度可以想象出ORuM(Object Relational un-Mapping)的思想理念。我们在程序中仅仅定义Domain, 而想有个工具可以帮助我们"自动化"实现Mapping,我们无需按传统的ORM思想那样为Domain手动编码Mapping。ConfORM设计思想来源就是 ORuM(Object Relational un-Mapping)。这个系列一起学习下ConfORM。 阅读全文

NHibernate3剖析:Configuration篇之Cache lambda-configuration配置

2010-01-22 10:44 by 李永京, 2836 visits, 网摘, 收藏, 编辑
摘要:在上一篇文章中我们介绍了lambda表达式配置(lambda-configuration),其中还剩下EntityCache扩展方法用于配置Domain的二级缓存。本文介绍了使用Weak Type和EntityCache扩展方法两种方式配置实体缓存。 阅读全文

NHibernate3剖析:Configuration篇之SessionFactory lambda配置

2010-01-20 22:07 by 李永京, 1976 visits, 网摘, 收藏, 编辑
摘要:在NHibernate3中,SessionFactory的Properties和Cache配置实现了流配置(fluent-configuration)和lambda表达式配置(lambda-configuration)。NHibernate3新增了NHibernate.Cfg.Loquacious这个命名空间。为我们增加了强类型配置支持。上一篇介绍了流配置(fluent-configuration),这篇介绍下lambda表达式配置(lambda-configuration)的具体实现吧。 阅读全文

NHibernate3剖析:Configuration篇之SessionFactory fluent配置

2010-01-18 09:46 by 李永京, 2598 visits, 网摘, 收藏, 编辑
摘要:我们一直都提倡“约定胜于配置(Convention over Configuration)”。然而在NHibernate2时代我们大多数情况下使用hibernate.cfg.xml配置文件中使用字符串配置SessionFactory的一些信息。在NHibernate3中,NHibernate3新增了NHibernate.Cfg.Loquacious这个命名空间。为我们增加了强类型配置支持。我们可以通过流配置(fluent-configuration)和/或者lambda表达式配置(lambda-configuration)来配置SessionFactory的Properties属性,真正做到了“约定胜于配置”。我们先来看下流配置(fluent-configuration)的具体实现吧。 阅读全文

NHibernate2.1新特性之entity-name

2009-12-08 10:00 by 李永京, 3158 visits, 网摘, 收藏, 编辑
摘要:接着完成以前的NHibernate2.1新特性系列文章,这个系列主要摘取一些最新的例子来展示NHibernate2.1的新特性,等这个系列完成再准备另外一个新系列吧,因为关于NHibernate2.1的介绍还没有。这篇文章看看NHibernate2.1另外的一个新特性——实体名称(entity-name)。 阅读全文

NHibernate专题上线了

2009-11-09 00:19 by 李永京, 5357 visits, 网摘, 收藏, 编辑
摘要:博客园团队制作了NHibernate专题,经过kunkun同学的努力,NHibernate专题终于上线了。这个专题NHibernate作者们一致评价为中国版的NHForge哦,NHibernate专题地址:http://kb.cnblogs.com/zt/NHibernate/ 阅读全文

NHibernate 2.1.1.GA发布

2009-11-01 11:11 by 李永京, 4956 visits, 网摘, 收藏, 编辑
摘要:Fabio Maulo大牛通过几个月的fix,修复了大量的BUG,今天编译并发布了NHibernate 2.1.1.GA版本,这次Fabio Maulo好像很低调,没有在官方宣布,不过在twitter上记录了整个过程,这暗示这为打造下个全新的版本NHibernate3.0.0.Alpha1努力。你可以到这里下载NHibernate 2.1.1.GA,版本号为2.1.1.4000 阅读全文

NHibernate Issues之1255:联合主键(composite-id)

2009-10-18 19:57 by 李永京, 2695 visits, 网摘, 收藏, 编辑
摘要:这个系列是以博客形式整理关于NHibernate的Issues。记录一些零碎的小例子,通过零零碎碎的整理,可以巩固自己的知识和扩展我们的知识面。这些小例子也可以适当的在项目中呈现。 阅读全文

NHibernate Issues之1904/1905:相同属性的Domain与Join查询/子查询

2009-10-14 21:40 by 李永京, 2291 visits, 网摘, 收藏, 编辑
摘要:这个系列是以博客形式整理关于NHibernate的Issues。记录一些零碎的小例子,通过零零碎碎的整理,可以巩固自己的知识和扩展我们的知识面。这些小例子也可以适当的在项目中呈现。 阅读全文

NHibernate Issues之1902:示例查询(Query By Example)

2009-10-12 22:12 by 李永京, 2502 visits, 网摘, 收藏, 编辑
摘要:这个系列是以博客形式整理关于NHibernate的Issues。记录一些零碎的小例子,通过零零碎碎的整理,可以巩固自己的知识和扩展我们的知识面。这些小例子也可以适当的在项目中呈现。 阅读全文

NHibernate Issues之1899:ISession.SaveOrUpdateCopy()方法

2009-10-11 23:39 by 李永京, 2083 visits, 网摘, 收藏, 编辑
摘要:这个系列是以博客形式整理关于NHibernate的Issues。记录一些零碎的小例子,通过零零碎碎的整理,可以巩固自己的知识和扩展我们的知识面。这些小例子也可以适当的在项目中呈现。 阅读全文

NHibernate Issues之1898:命名查询

2009-10-10 13:20 by 李永京, 2191 visits, 网摘, 收藏, 编辑
摘要:这个系列是以博客形式整理关于NHibernate的Issues。记录一些零碎的小例子,通过零零碎碎的整理,可以巩固自己的知识和扩展我们的知识面。这些小例子也可以适当的在项目中呈现。 阅读全文

NHibernate实例分享:Northwind Mapping

2009-10-04 00:07 by 李永京, 2651 visits, 网摘, 收藏, 编辑
摘要:NHibernate的强大之处在于其映射,我们在设计Domain中,经常为各种各样的映射感到头痛,为此我把微软SQL Server2000自带的Northwind数据库使用NHibernate映射了一下,需要的请下载其代码。 阅读全文

NHibernate2.1新特性之EntityMode.Map

2009-08-05 08:47 by 李永京, 3202 visits, 网摘, 收藏, 编辑
摘要:假设你想要持久化设计模型,而你不想写任何Domain实体。假设你想在原有数据基础上测试ORM错误;而你不想写任何实体界面也没有任何实体实现。假设朋友之间互相讨论问题,传你一些NH映射文件,来优化数据访问,但他并没有传你他的具体实现。 阅读全文

NHibernate2.1新特性之Tuplizers

2009-08-02 22:01 by 李永京, 4176 visits, 网摘, 收藏, 编辑
摘要:Tuplizers?这个单词在英文字典里没有解释,和元组(tuple)这个单词有点相似,在NHibernate中应该翻译为元组片断,Tuplizers只在映射中提供,所以叫元组片段映射比较合适。其完整命名空间是NHibernate.Tuple.Tuplizer,它就是根据给定的NHibernate.EntityMode,来复现片断数据。如果给定的片断数据被认为其是一种数据结构,"tuplizer"就是一个知道如何创建这样的数据结构,以及如何给这个数据结构赋值的东西。 阅读全文

NHibernate之旅(24):探索NHibernate二级缓存(下)

2008-11-28 21:17 by 李永京, 5777 visits, 网摘, 收藏, 编辑
摘要:呵呵,今天收到了微软“最有影响力开发者”礼包,很高兴自己荣获“微软最有影响力开发者”称号,这篇我还继续上一篇的话题聊聊NHibernate二级缓存剩下的内容,比如你修改、删除数据时,二级缓存是什么策略呢?我们如果使用缓存查询呢?如何管理NHibernate二级缓存呢? 阅读全文

NHibernate之旅(23):探索NHibernate二级缓存(上)

2008-11-27 00:07 by 李永京, 5868 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!缓存内容的确可以探索很多出来。这篇我们聊聊NHibernate二级缓存。如何实现二级缓存? 阅读全文

NHibernate之旅(22):探索NHibernate一级缓存

2008-11-24 22:49 by 李永京, 5840 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!缓存是个敏感的话题。我们开始探索NHibernate缓存机制。这篇我没有准备什么,先来学习下NHibernate一级缓存。希望对你有所帮助。 阅读全文

NHibernate之旅(21):探索对象状态

2008-11-17 16:05 by 李永京, 5814 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!本篇介绍NHibernate中三种对象状态:瞬时态(Transient)、持久态(Persistent)、托管态(Detached)和它们之间的转换。希望对你有所帮助! 阅读全文

NHibernate之旅(20):再探SchemaExport工具使用

2008-11-13 18:33 by 李永京, 5097 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!如何为表字段增加一些约束?如何生成存储过程?如何生成视图?使用SchemaExport工具吧! 阅读全文

NHibernate之旅(19):初探SchemaExport工具使用

2008-11-11 17:06 by 李永京, 6676 visits, 网摘, 收藏, 编辑
摘要:这篇文章通过实例介绍NHibernate中提供两个实用工具SchemaExport工具利用持久化类和映射文件生成数据库架构。SchemaUpdate工具通过持久化类和映射文件更新数据库架构。 阅读全文

NHibernate之旅(18):初探代码生成工具使用

2008-11-10 12:29 by 李永京, 9686 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这篇我们介绍如何使用开源MyGeneration代码生成工具根据数据库架构生成NHibernate映射文件和持久化类,采用图文结合一步一步写法!希望对你有所帮助!注意多图慎入! 阅读全文

NHibernate之旅(17):探索NHibernate中使用存储过程(下)

2008-11-07 13:13 by 李永京, 5406 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!通过三篇文章的介绍,探索如何在NHibernate使用存储过程来删除对象、创建对象、更新对象、查询对象等操作。注意:本篇并非官方权威的资料,所以敬请参考,希望对你有所帮助! 阅读全文

NHibernate之旅(16):探索NHibernate中使用存储过程(中)

2008-11-06 16:40 by 李永京, 5892 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这一篇接着上一篇来探索NHibernate中使用存储过程,介绍在NHibernate中如何使用存储过程创建对象、更新对象,并非官方权威的资料,所以敬请参考,希望对你有所帮助。 阅读全文

NHibernate之旅(15):探索NHibernate中使用存储过程(上)

2008-11-03 11:05 by 李永京, 7554 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这篇文章主要学习使用MyGeneration提供的模板创建增删改对象的存储过程,并介绍删除对象存储过程的使用。 阅读全文

NHibernate之旅(14):探索NHibernate中使用视图

2008-11-01 12:42 by 李永京, 5876 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这篇文章展示在NHibernate中如何使用视图,通过这篇文章的快速阅读,你会觉得豁然开朗的样子(视图原来这样啊,没有什么神秘之处~~)。 阅读全文

NHibernate之旅系列文章导航

2008-10-30 16:13 by 李永京, 64250 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这次我将带领大家来到NHibernate的世界。一步一步看清NHibernate中的种种细节。这次旅途我们安排了很多站点,分别是:鸟瞰NHibernate、接触NHibernate、数据在我手中、控制你的全部、观光站、关系如此复杂、我来加载你等等,这次旅途还要更新!将给你带来更多精彩! 阅读全文

NHibernate之旅(13):初探立即加载机制

2008-10-29 18:36 by 李永京, 6109 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这篇文章初步讨论NHibernate中的加载机制,分别从一对多关系、多对多关系角度分析NHibernate立即加载机制。这些是我在平时应用、学习中摸索出来的一点收获,希望对你有所帮助。 阅读全文

NHibernate之旅(12):初探延迟加载机制

2008-10-28 17:01 by 李永京, 7775 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这篇文章初步讨论NHibernate中的加载机制,分别从一对多关系、多对多关系角度分析NHibernate默认加载行为——延迟加载机制。希望对你有所帮助。 阅读全文

NHibernate之旅(11):探索多对多关系及其关联查询

2008-10-27 21:58 by 李永京, 8817 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这篇通过编写代码的形式带你一步一步完成NHibernate中的多对多关系映射,并使用NHibernate中提供的三种查询方法实现了多对多关联查询。希望对你有所帮助。 阅读全文

NHibernate之旅(10):探索父子(一对多)关联查询

2008-10-26 18:16 by 李永京, 10346 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这一篇通过上一篇完成的一对多关系映射,使用NHibernate中提供的三种查询方法分别实现了父子(一对多)关联查询,并初步探讨了条件查询中比较深入的话题。希望对你有所帮助。 阅读全文

NHibernate之旅(9):探索父子关系(一对多关系)

2008-10-24 21:06 by 李永京, 11707 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这篇我们开始学习NHibernate中的关联关系,这是NHibernate中的引以为豪的地方。这篇用一个实例建立起一个最简单的关系:“外键关系”或者称作“父子关系”、“一对多关系”。 阅读全文

NHibernate之旅(8):巧用组件之依赖对象

2008-10-23 14:01 by 李永京, 7371 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!如果我要在Customer类中实现一个Fullname属性该怎么做呢?NHibernate中,提供了组件和动态组件来帮助我们完成这件事情。这篇介绍一个技巧:我们使用组件来依赖对象。 阅读全文

NHibernate之旅(7):初探NHibernate中的并发控制

2008-10-21 21:52 by 李永京, 8485 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这篇我们继续深入上一篇的事务话题,一起讨论NHibernate中的并发控制。在NHibernate中支持乐观并发控制:在映射文件中定义了<version>节点和<timestamp>节点。其中<version> 节点用于版本控制。<timestamp>节点用于时间截跟踪。这篇结合一个实例讨论这些内容。 阅读全文

NHibernate之旅(6):探索NHibernate中的事务

2008-10-20 13:52 by 李永京, 9305 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!这一篇在探索Insert, Update, Delete操作的基础上使用事务修改这些操作,并带领大家怎么使用测试工具TestDriven.NET的另一个功能怎么查看代码运行覆盖率,这对事务的分析尤其重要哦~~ 阅读全文

NHibernate之旅(5):探索Insert, Update, Delete操作

2008-10-17 16:31 by 李永京, 13211 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!通过上几篇的学习,知道了NHibernate中的查询方法,这一篇我们一起探索NHibernate中的Insert, Update, Delete操作。希望对你有所帮助! 阅读全文

NHibernate之旅(4):探索查询之条件查询(Criteria Query)

2008-10-16 18:20 by 李永京, 13627 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!在NHibernate中提供了三种查询方式给我们选择:NHibernate查询语言(HQL,NHibernate Query Language)、条件查询(Criteria API)、原生SQL(Literal SQL,T-SQL、PL/SQL)。这一节我们介绍条件查询(Criteria API)。 阅读全文

NHibernate之旅(3):探索查询之NHibernate查询语言(HQL)

2008-10-15 20:09 by 李永京, 20250 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!在NHibernate中提供了多种查询方式给我们选择:NHibernate查询语言(HQL,NHibernate Query Language)、条件查询(Criteria API)、原生SQL(Literal SQL,T-SQL、PL/SQL)等。这一节我们介绍NHibernate查询语言(HQL,NHibernate Query Language)。 阅读全文

NHibernate之旅(2):第一个NHibernate程序

2008-10-14 16:30 by 李永京, 38019 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!作为学习NHibernate的第一篇,我们先亲自动手,一步一步搭建一个NHibernate程序来,这个程序是以一个实际场景电子交易程序来模拟,客户/订单/产品的经典组合。由于第一次使用NHibernate,所以我们的目的是映射一张表并完成使用NHibernate来读取数据。我们按照基本开发软件思想的流程一步一步完成吧。 阅读全文

NHibernate之旅(1):开篇有益

2008-10-10 16:44 by 李永京, 26025 visits, 网摘, 收藏, 编辑
摘要:欢迎来到NHibernate之旅!作为开篇,首先了解多少人在使用NHibernate,先搞清楚NHibernate是什么?学习NHibernate的一些资源。更多参考NHibernate专题阅读全文

NHibernate 2.0.1正式版发布了

2008-06-30 20:00 by 李永京, 6406 visits, 网摘, 收藏, 编辑
摘要:NHibernate源于非常优秀的基于Java的Hibernate关系型持久化工具。3月31日发布了NHibernate 2.0.0 Alpha 1,添加了很多新特性。6月30日NHibernate 2.0.0.Beta1发布了,它集成了很多Hibernate 3.2的特性。8月31号发布了NHibernate 2.0.0正式版。 阅读全文

NHibernate 2.0.0 Alpha 1 悄悄地发布了

2008-03-31 17:11 by 李永京, 5405 visits, 网摘, 收藏, 编辑
摘要:NHibernate源于非常优秀的基于Java的Hibernate关系型持久化工具。可是从2007年11月26日发布的1.2.1GA版本不是很好的支持VS2008。今天负责NHibernate开发的Ayende Rahien发布NHibernate 2.0.0 Alpha 1,添加了很多新特性。 阅读全文
原文地址:https://www.cnblogs.com/Leo_wl/p/1813845.html