私はEF 4.1でMVCアプリケーションを開発しています。DBを生成するためにTPHアプローチを使用しました。
1. company と 2. Lead の 2 つのエンティティがあり、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 で始まるフラグメントのマッピングの問題: エンティティが同じテーブル内の異なる行にマップされています。これらの 2 つのマッピング フラグメントが、同一のキーを持つエンティティの 2 つのグループを 2 つの異なる行のグループにマップしないようにしてください。