Csharp/C#教程:NHibernate获取没有代理的对象分享


NHibernate获取没有代理的对象

我正在使用NHibernate(2.0.1.4)与NHibernate.Linq(1.0.0.4)从数据库中获取Node类型的对象。

当我得到这些对象时,我得到的集合的最后一个对象是Proxy类型(因为我使用了“NHibernate.ByteCode.LinFu”“)

我使用了以下linq查询:

var mynodes = from node in session.Linq() where ancestorNodes.Contains(node.Id) select node).ToList() 

anchestorNodes是要获取的节点对象的Id列表。

当我在“ancestorNodes”列表中有3个id时,我从查询中得到的结果(mynodes)的最后一个对象是nodeProxy类型。

怎么会这样? 为什么它总是最后一个对象? 我怎么解决这个问题?

如果您的Proxy对象实现了INhibernateProxy,您可以使用以下代码使用NHibernate取消对象:

 iAmaSession.GetSessionImplementation().PersistenceContext.Unproxy(iAmaProxy) 

希望这可以帮助!

上述就是C#学习教程:NHibernate获取没有代理的对象分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1015322.html

(0)
上一篇 2021年12月30日
下一篇 2021年12月30日

精彩推荐