我想在使用EF 4.x时实现一个层超类型模式((PoEAA) )。
假设我有一个名为Entity的层超类型类,从中继承了Teacher和Student两个类。
Person类的定义如下
class Entity
{
public int Id {get;set;}
}老师和学生就像这样
class Teacher : Entity
{
publix string Name {get;set;}
}
class Student : Entity
{
public int Age {get;set;}
}我如何配置EF 4.x,以便在我的数据库中,只有两个表对应于教师和学生?我尝试使用TPC继承策略来映射此结构,但它不适合,它创建了三个表,每个具体类一个表。
使用NHibernate,这种情况很常见,而且处理得很好,我的意思是,如果我只为Person和Student创建映射,数据库将只有两个表,并且我不必显式地实现任何继承启动。
谢谢你所有的建议
Riana
发布于 2012-02-18 09:02:47
使Entity类成为抽象类
public abstract class Entity
{
public int Id {get;set;}
}
public class Teacher : Entity
{
publix string Name {get;set;}
}
public class Student : Entity
{
public int Age {get;set;}
}https://stackoverflow.com/questions/9337212
复制相似问题