假设我有一个 Foo 类,如下所示:
public class Foo
{
public virtual int FooId { get; protected internal set; }
public virtual List<Bar> bars { get; protected internal set;}
public virtual Bar DefaultBar { get; set; }
}
其中 Foo 有一个 Bar 的集合,并且有一个 Bar 类型的 DefaultBar 属性。
条形图的集合存储在具有以下字段的表中
FooBarID int PK
FooID int FK
BarID int FK
Default bit
其中只有一行匹配 FooID 值的集合可以具有 Default=1。忽略这种糟糕的设计(遗留系统需要),
在我的地图中,我有以下内容:
<class name="Bar">
<id name="BarID" generator="native" unsaved-value="0" />
</class>
<class name="Foo">
<id name="FooID" generator="native" unsaved-value="0" />
<set name="Bars"
table="FooBars">
<key column="FooId" />
<many-to-many class="Bar" column="BarId" />
</set>
</class>
我如何将 BarID 在 Default=1 的单个匹配行中指示的值映射到 Foo 实例的 DefaultBar 属性?