首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何运行Nhibernate ICriteria查询与setFetchMode(惰性),当lazy=false定义在HBM?

如何运行Nhibernate ICriteria查询与setFetchMode(惰性),当lazy=false定义在HBM?
EN

Stack Overflow用户
提问于 2010-09-29 22:38:54
回答 1查看 1.9K关注 0票数 0

我想使用懒惰的多对一关联来运行条件查询。这些关联在HBM中设置为lazy="false"。这是因为我们90%的项目都在热切地使用它。

但是有一些“大”查询应该作为lazy="proxy"运行。

HBM:

代码语言:javascript
复制
<many-to-one name="DestinationElement" class="X" column="DstElemId" not-null="true" unique="false" cascade="save-update" outer-join="auto" fetch="select" lazy="false" index="IDX_Ass_DestElem">

标准设置:

代码语言:javascript
复制
criteria.SetFetchMode("DestinationElement", FetchMode.Lazy);

它以相反的方式工作,但不是这样的。它急切地得到了。

LOC是20K+,如果以相反的方式来做,那将是一次大规模的重构。

我怎么能强迫它只在我想要的时候懒惰地获取,而在其他时间都急切地获取呢?

提前感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-01 00:09:35

HBM中的lazy="false"不能在查询中被覆盖(除了在99%的时间里都是个坏主意)

你必须修改你的代码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3822684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档