0
從數據庫加載的對象的對象必須看起來喜歡這樣的實體:我如何安裝它不是持久的使用NHibernate
public class Driver
{
IVehicle Vehicle {get;set;}
}
和實施IVehicle(汽車,自行車,火車幾個不同的類別。 ..)
我怎樣才能選擇我的驅動程序保持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");
}
}
此外,我需要從驅動器映射
問題是不同的車輛沒有保存在數據庫中。也許我的例子很糟糕,所以我會試着用另一種方式來解釋:不同的車輛不是我係統中的實體,而是實用程序類,它們都以不同的方式實現某種方法。我需要找出一種方法來保存,爲每個司機,哪些課堂上使用(我選擇創建適當的類,並且我想要選擇記憶..) – ItayMaoz 2011-04-29 16:43:06
謝謝,雖然我找到了不同的方式來做它(用解決方案編輯我的問題) – ItayMaoz 2011-04-29 20:04:34