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