質問

変更できないDBのテーブルを使用する必要があります(リンクサーバーを使用)。 したがって、スキーマの一部はこれらのテーブルのビューであり、DBにFKを作成できません。

ADO.NET Entity Frameworkで関連付けを作成するときに、外部DBのテーブルの2番目の列にインデックスがあり、EFがエンティティキーを作成しているため、問題が発生しています(名前です)レコードの説明-彼らはただその注文をスピードアップしたかったと思います)。

EFエンティティのこの列からエンティティキーを削除すると、基になるテーブルにキーがあるため、それが必要だと文句を言います。 そのままにしておくと、EFのテーブルマッピングの何にもマップできません。

誰かが私が何をすべきかを知っていますか?

役に立ちましたか?

解決

XMLを編集し、キーから列を削除する必要があります。 <!> lt; EntityType <!> gt;を見つけます。 <!> lt; edmx:StorageModels <!> gt;のタグセクション(SSDLコンテンツ)。 <!> lt; PropertyRef <!> gt;を削除します。 <!> lt; Key <!> gt;それは実際には主キーの一部ではありません。

これを行うと、<!> quot; Entity Key <!> quot;を設定できます。デザイナの対応するスカラープロパティをfalseに設定すると、EFは怒りません。また、この列を関連付けてマッピングする必要もなくなります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top