首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实体框架4.x和层超类型

实体框架4.x和层超类型
EN

Stack Overflow用户
提问于 2012-02-18 08:15:47
回答 1查看 211关注 0票数 1

我想在使用EF 4.x时实现一个层超类型模式((PoEAA) )。

假设我有一个名为Entity的层超类型类,从中继承了Teacher和Student两个类。

Person类的定义如下

代码语言:javascript
复制
class Entity
{
    public int Id {get;set;}
}

老师和学生就像这样

代码语言:javascript
复制
class Teacher : Entity
{
     publix string Name {get;set;}
}

class Student : Entity
{
     public int Age {get;set;}
}

我如何配置EF 4.x,以便在我的数据库中,只有两个表对应于教师和学生?我尝试使用TPC继承策略来映射此结构,但它不适合,它创建了三个表,每个具体类一个表。

使用NHibernate,这种情况很常见,而且处理得很好,我的意思是,如果我只为Person和Student创建映射,数据库将只有两个表,并且我不必显式地实现任何继承启动。

谢谢你所有的建议

Riana

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-18 09:02:47

使Entity类成为抽象类

代码语言:javascript
复制
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;}
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9337212

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档