我正在使用 EF 4.1 开发 MVC 应用程序。我已经使用 TPH 方法来生成数据库。
我有两个实体,1. company 和 2. Lead , Lead 是从 Company 继承的。
请检查下图:
现在我有以下映射...
这是带有 XML 的 edmx 文件
<EntitySetMapping Name="Companies">
<EntityTypeMapping TypeName="IsTypeOf(Model1.Company)">
<MappingFragment StoreEntitySet="Companies">
<ScalarProperty Name="Id" ColumnName="Id" />
<ScalarProperty Name="Name" ColumnName="Name" />
<Condition ColumnName="__Disc__" Value="Company" />
</MappingFragment>
</EntityTypeMapping>
<EntityTypeMapping TypeName="Model1.Lead">
<MappingFragment StoreEntitySet="Companies">
// Gives Error -> <ScalarProperty Name="Id" ColumnName="Id" />
// Gives Error -> <ScalarProperty Name="Name" ColumnName="Name" />
// Gives Error -> <ScalarProperty Name="Status" ColumnName="Status" />
<Condition ColumnName="__Disc__" Value="Lead" />
</MappingFragment>
</EntityTypeMapping>
错误 3034:从第 47、54 行开始映射片段时出现问题:一个实体被映射到同一个表中的不同行。确保这两个映射片段不会将具有相同键的两组实体映射到两组不同的行。