私はEntityFramework(現在EF5を使用しています)とvs2012を初めて使用し、何かを理解するのに苦労しています。
データベースから生成された.edmxがあります。2つのテーブルがあります:Item
と3rdPartyItem
。つまり、Item
テーブルはすべての会社アイテムのメインテーブルであり、3rdPartyItem
テーブルはアイテムの追加属性を保持するために使用されるテーブルです。これ3rdPartyItem
テーブルは外部の会社によって作成され、会社のソフトウェアで使用されているので、どちらのテーブルもいじることはできません。私がやろうとしているのは、グリッド内のアイテムのリストを表示することですが、両方のテーブルのすべてのフィールドの組み合わせを表示する必要があります。vs2012では、関係を作成して「0対1」にすると(Itemテーブルの各レコードに対して、必ずしも3rdPartyItemテーブルに1つある必要はないため)、vsは正しくマップされていないことについて不平を言います。マッピングを設定すると、複数の関係があると文句を言います。調べてみたところ、2つの主キーとの関係が取れないことがわかったので、それが問題だと思っていました。しかし、コードで次のようにItemsと3rdPartyItemにアクセスできるように.edmxを変更するにはどうすればよいですか?
var items = dbContext.Items;
items.3rdPartyItem.SomeField <--field from 3rdPartyItem table.
それが可能かどうかはわかりませんが、可能であれば非常に役立ちます。何か案は?