NHibernate渴望加载

时间:2017-05-19 05:54:17

标签: .net entity-framework nhibernate

在实体框架中,当我禁用延迟加载和代理时,在我明确包含它们之前,永远不会加载关联。

如何在NHibernate中获得相同的行为?

我试图在映射配置文件中设置lazy = false,加载了与实体框架完全相反的行为

 <set name="associations" table="parentChild" lazy="false">
 ......
 </set>

有没有办法获得像行为一样的实体框架

2 个答案:

答案 0 :(得分:1)

您似乎正在寻找.slider:vertical { -fx-pref-height:300px; } 选项,它会为您提供最接近的结果。

  

lazy(可选 - 默认为代理):默认情况下,单点   协会代理。 lazy =“no-proxy”指定该属性   首次访问实例变量时应该懒惰地获取。   它需要构建时字节码检测。懒惰=“假”   指定始终紧急提取关联。

(来自Hibernate docs,但仍然适用于NHibernate)

答案 1 :(得分:0)

如果您的目标是避免代理这些属性,请参阅Hazzik answer。这会导致代理代理被代理。

如果您的目标是能够在不加载它们的情况下访问这些属性,则保留(错误地根据db中的实际数据)null(对于集合为null或为空),NHibernate不提供此功能,除了不映射那些属性(当然也不允许加载)。

如果是后者,你为什么需要这个?也许你应该问一个关于你想要它的原因以及如何解决它的另一个问题(也许没有它)。