假设我有类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集合,其属性为DefaultBar,类型为Bar。
条形图集合存储在一个包含以下字段的表格中
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属性?