【发布时间】:2017-02-20 16:42:24
【问题描述】:
有没有办法将某个字段映射到实体框架中的多个列?具体场景是使用 Table per Type 层次结构的继承。我希望某个字段同时出现在基本类型表和具体类型表中。
例子:
abstract class BaseEntity
{
int id { get; set; }
DateTime createDate { get; private set; }
string TypeName { get; private set; }
}
public class Person : BaseEntity
{
int id { get; set; }
DateTime createDate { get; private set; }
string TypeName { get; private set; }
string FirstName {get; set;}
string LastName {get; set;}
DateTime DateOfBirth {get; set;}
}
基类表
int ID,
DateTime createDate,
varchar TypeName
具体类表
int ID,
DateTime createDate,
varchar FirstName,
varchar LastName,
DateTime DateOfBirth
在两个表中都有 ID 不是问题,因为它是主键。但是,创建日期被视为单独的数据。
这样做的主要原因是为了数据库维护和可支持性。我知道重复数据不是一个好习惯。这仅适用于少数几个领域。
【问题讨论】:
标签: entity-framework inheritance entity-framework-6