C# 仅在必要时加载对象

C# 仅在必要时加载对象,c#,nhibernate,hibernate-mapping,C#,Nhibernate,Hibernate Mapping,我有一个Slab对象的映射,该对象具有对对象和SlabPDO SlabInstructions的映射引用。我希望进行选择,始终携带对象SlabPDO,并仅在必要时加载SlabInstructions。有没有办法做到这一点?下面是一个映射示例: 致以最良好的祝愿 关于这两个映射属性lazy=true fetch=select查阅文档 这是你的解决方案 <set name="SlabInstructions" generic="true" inverse="true" lazy="true

我有一个Slab对象的映射,该对象具有对对象和SlabPDO SlabInstructions的映射引用。我希望进行选择,始终携带对象SlabPDO,并仅在必要时加载SlabInstructions。有没有办法做到这一点?下面是一个映射示例:


致以最良好的祝愿

关于这两个映射属性lazy=true fetch=select查阅文档

这是你的解决方案

<set name="SlabInstructions" generic="true" inverse="true" lazy="true" cascade="all"
  fetch="select">
  <key column="Id_Slab" />
  <one-to-many class="SlabInstruction"/>
</set>

你能把你的标题翻译成英语吗?谢谢你的回复!问题是,在90%的情况下,将需要子对象。在其他情况下,我需要放弃加载子对象。最好的方法是什么?当您编写查询时,可以指定加载子对象并将其左键连接到fetch。因此,映射可以是惰性的,以在10%的情况下节省不必要的子对象加载。
<set name="SlabInstructions" generic="true" inverse="true" lazy="true" cascade="all"
  fetch="select">
  <key column="Id_Slab" />
  <one-to-many class="SlabInstruction"/>
</set>