0

完全な主キーで生成されたデータベース優先モデルがあります。データベースの最初のモデルは正常に動作します。ただし、Entity Framework 4.3 にアップグレードしました。EF に付属する標準の T4 テンプレートを変更しました。

プロジェクトの最初に Add-Migration を使用すると、エンティティに主キーが定義されていないと不平を言うようになりました。これは真実ではありません (またはある程度)...さらに詳しく見ると、EF[Key, Column(0)]がすべてのキー要素で定義することを期待している複合キーがあります。

System.Data.Entity.Edm.EdmEntitySet: EntityType: EntitySet 'SupplierWarehouses' is based on type 'SupplierWarehouses' that has no keys defined.

私が直面している問題は、T4 テンプレート (DbContext) のメソッドを変更しようとしていて、オブジェクトにプロパティWritePropertyがないように見えることです。現在、このプロパティは Visual Studio Model Editor から表示されるため、理論上は存在するはずです。Entity KeySystem.Data.Metadata.Edm.EdmProperty

誰かがこれで私を助けることができれば感謝します

サンジ。

4

1 に答える 1

0

System.Data.Metadata.Edm.EdmPropertyこのプロパティがないことがわかりました。System.Data.Metadata.Edm.EntityType実際のプロパティ isから参照する必要がありKeyMembersます。

WritePropertyEntity Object を受け入れるように T4 に変更を加え、ビューティとして機能するようになりました。

于 2012-06-12T10:40:15.833 に答える