繁体   English   中英

EF 4.3.1如何使用每种类型的表映射子子类

[英]EF 4.3.1 How to map a sub sub class with table per type

我有一个称为Party的抽象基类。 有几个具体的子类(公司,人员,部门)。 Party有一个称为PartyType的属性,可以用作区分符。 每种类型都在其自己的表中,配置如下

Map<Person>(p => p.Requires("PartyType").HasValue("Person").ToTable("People");

一切正常。 现在,我想添加一个名为Employee的Person的子类。 我该如何映射? 我试过了

Map<Employee>(e => e.Requires("PartyType").HasValue("Employee")
   .ToTable("Employees");

但这给出了运行时错误

(43,10):错误3032:映射片段的问题从第43行开始:84:EntityTypes WOL.EFData.Person,WOL.EFData.Employee被映射到表People中的相同行。 映射条件可用于区分这些类型映射到的行。

在表中,每种类型的映射EF不需要区分符配置。

modelBuilder.Entity<Person>().ToTable("People");
modelBuilder.Entity<Employee>().ToTable("Employees");

有关更多信息,请参见本文

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM