У меня есть объект, который выглядит следующим образом:
public class Driver
{
IVehicle Vehicle {get;set;}
}
и несколько различных классов, которые реализуют IVehicle (Car, Bike, Train ...)
Как выбрать какой конкретныйРеализация IVehicle мой Драйвер держит, и помните этот выбор при следующей загрузке драйвера из БД?
Я использую NHibernate 3.0 для сохранности вместе с FluentNHibernate для отображения.* РЕДАКТИРОВАТЬ
Хорошо, я наконец понял это.Мне нужно было сопоставить транспортное средство и отобразить каждый подкласс следующим образом:
public void VehicleMap : ClassMap<IVehicle>
{
public VehicleMap()
{
Id(v => v.Id); // Needed to add a property which will be used as Id
DiscriminateSubClassesOnColumn("TYPE");
}
}
public void CareMap : SubclassMap<Car>
{
public CarMap()
{
DiscriminatorValue("CAR");
}
}
Кроме того, мне нужно было отключить отложенную загрузку транспортного средства из отображения водителя