1
我的域名有一個對象稱爲汽車。它有幾個特性抽象類和流利Nhibernate
public abstract class Car : ICar
{
public int Id { get; set; }
public string Name { get; set; }
public string Model { get; set; }
public string Color { get; set; }
public abstract string Drive();
}
它實現了接口ICAR
public interface ICar
{
string Color { get; set; }
int Id { get; set; }
string Model { get; set; }
string Name { get; set; }
string Drive();
}
現在我想有是兩個繼承類型。他們繼承了Car,並實現了ICar。
class SportCar: Car, ICar
{
public override string Drive()
{
return ("vroooomvroooomvroooomvroooom i'm a sports car - "+ Name);
}
}
和
class Truck: Car, ICar
{
public override string Drive()
{
return ("grrrrrrrrrrrr i'm a sports truck- " + Name);
}
}
所以,現在我有fullfill合同,並有駕駛不同的方式兩輛車。
酷
這工作得很好,在我的應用程序,以便在其他地方我能有這樣的方法,我們很高興
public string DoDrive(ICar c)
{
return c.Drive();
}
但現在我想我的車對象使用被保存到數據庫流利nhibernate。 我只想要一張桌子的汽車,而卡車和跑車應該放在同一張桌子上。我可以創建一個枚舉來確定它是否是賽車或卡車。那不是一個問題。但如何映射我的汽車物體。
我不能使用抽象類nhibernate
謝謝!
偉大的答案謝謝。沒有意識到這個概念甚至存在。 – Crudler