В .hbm.xml отображение, которое я ищу, выглядело бы следующим образом - любая идея, как мне воспроизвести это в Fluent NHibernate ...?
<class name="Dinosaur" table="Dinosaur" >
<composite-id>
<key-property name="Id" column="Id"/>
<key-property name="Period" column="Period"/>
</composite-id>
<property name="DinosaurType" column="DinosaurType" />
<joined-subclass name="Tyranosaur" table="Tyranosaur">
<key>
<column name="DinosaurId"/>
<column name="DinosaurPeriod"/>
</key>
<property name="NumberOfTeeth">
<column name="NumberOfTeeth">
</column>
</property>
</joined-subclass>
На данный момент у меня есть
public class DinosaurMap : ClassMap<Dinosaur>
{
public DinosaurMap()
{
Table("Dinosaur");
CompositeId()
.KeyProperty(x => x.Id, "Id")
.KeyProperty(x => x.Period, "Period")
;
Map(x=>x.DinosaurType)
;
}
}
public class TyranosaurMap : SubclassMap<Tyranosaur>
{
public TyranosaurMap()
{
Map(x=>x.NumberOfTeeth);
}
}
, но я не могу понять, как в Таблице подкласса тиранозавра указать составной ключ. Проблема с системой отслеживания проблем NHibernate позволяет предположить, что это было исправлено в версии 1.0 RTM (я использую 1.0.0.593)