Entity framework 实体框架表继承
我有以下两个表格表A和ArchivedTableA。 基本上,它们是相同的表,但TableA中的行被移动到ArchivedTable以对它们进行归档Entity framework 实体框架表继承,entity-framework,entity-framework-4,Entity Framework,Entity Framework 4,我有以下两个表格表A和ArchivedTableA。 基本上,它们是相同的表,但TableA中的行被移动到ArchivedTable以对它们进行归档 如何在实体框架中表示这一点,以便这两个类从同一实体继承。我正在使用POCOs 我将创建一个具有通用属性的基类,例如 public class BaseEntity { public virtual int Id {get;set;} public DateTime CreatedOn {get
如何在实体框架中表示这一点,以便这两个类从同一实体继承。我正在使用POCOs 我将创建一个具有通用属性的基类,例如
public class BaseEntity
{
public virtual int Id {get;set;}
public DateTime CreatedOn {get;set;}
}
然后创建从这个基类继承的POCO对象,因为它们有如下公共列
public class TableA : BaseEntity
{
public string NewName {get;set;}
}
public class ArchivedTableA : BaseEntity
{
public string Name {get;set;}
}
显然,您需要以EF管道的形式在此基础上进行DbSet映射等…我建议在这种情况下不要使用继承。如果要将一条记录从TableA“归档”到ArchiveTableA,它仍将位于基表中
朱莉·勒曼(Julie Lerman)有一篇很好的MSDN文章,讲述了继承的一些陷阱 你的意思是要删除T4代吗?不一定。T4模板只是生成EF类的“模具”。您可以创建自己的自定义T4模板,该模板使用上述继承模式。首先,一旦你对你的对象模型满意,我会手工编写所有的类,然后从该对象模型创建T4模板。再次感谢你的回复。所以,似乎没有人能做到这一点,这是开箱即用的吗您需要创建自己的T4代-对吗?