文章分类

站点统计

  • 分类总数: 13 个
  • 文章总数: 145 篇
  • 评论总数: 47 条
  • 附件总数: 59 个
  • 建站日期: 2008-08-18
  • 访问总数: 472870 人次
  • RSS订阅: 文章|评论

ISession.Load与ISession.Get

Admin 于 2008-09-23 07:10:30 发表NHibernate

NHibernate中使用 ISession.Load 加载的只是未经初始化的 Proxy,而 ISession.Get 加载的对象是初始化的。

所以,如果取完数据就关闭Session需要使用ISession.Get以避免使用Lazy-load的对象属性为null。

被阅1360次, 0票NHibernate 发表评论

通过PostSharp解决NHibernate实体类属性需要加virtual关键字的问题

Admin 于 2008-09-16 00:44:30 发表NHibernate

    用过NHibernte的人都知道需要在每个实体类的public属性前加上virtual关键字,才可以使用NHibernate的延迟加载(Lazy-loading)的功能。大多数情况下,没有谁对这种开发方式有意见,但是在我看来这是一种丑陋的开发方式,并且有时会漏写virtual关键字需要在程序进行时才能通过抛出的异常知道问题所在。这里通过AOP框架Postsharp解决此问题。
    1、Postsharp程序集或代码可从http://www.postsharp.org/网站下载。下载“Unsealer”并将“Unsealer.Weaver.dll”与“Unsealer.psplugin”相关文件复制到Postsharp安装目录下Plugins文件夹下。在NHibernate实体类所在项目中引用PostSharp.Public.dll和Unsealer.dll。
    2、两种方式任选一种:①在每个实体类前加上[Unseal]特性;②在AssemblyInfo.cs文件中加上[assembly: Unseal(AttributeTargetTypes = "*")]。

    这样就无需再为NHibernate实体类属性加上virtual了。
    注:通过此种方式定义实体类时,任何实体类不可定义为sealed类型。

Linq to NHibernate

Admin 于 2008-09-13 00:44:05 发表NHibernate

NHibernate 2.0 中并不包含Linq to NHibernate,但NHibernate 2.1将支持Linq。

被阅1423次, 0票Linq NHibernate 发表评论

NHibernate 2.0 正式发布了

Admin 于 2008-08-24 02:20:16 发表NHibernate

NHibernate 2.0 Final正式发布了,可以从这里下载。

NHibernate官方网站:

http://www.hibernate.org/343.html
被阅1320次, 0票NHibernate 发表评论
1 / 1 / 4 | « 1 » |
Powered by MiniBoke v2.0.0.8 Build 0828

Copyright © 2008 开源吧!. All rights reserved.

粤ICP备07500939号