このシナリオでは、次の3つのモデルを持つ既存のデータベースがあります。
Address
、'AddressId'、'ParentId'、'City'、'State'などがあります
Person
、「PersonId」、「Name」などがあります。
Company
、「CompanyId」、「Name」などがあります。
Address
1つのテーブルよりも多くのモデルの行を含めることができるため、外部キーはありません。列「ParentId」には、Address
「PersonId」または「CompanyId」のいずれかが含まれます。
を生成するためにDbContext
、Entity Framework Power Tools Beta 2を使用しました。参照整合性がないため、生成されたクラスにはPerson
、Company
必要なアドレスのコレクションが含まれていません。
これらのクラスを変更してこの「Addresses」プロパティに追加し、それがAddressテーブルに正しくマップされていることを確認するにはどうすればよいですか?
現在、私はこのようなことをしています。可能であれば、コンテキストマップを作成したいと思います。
public IEnumerable<Address> Addresses
{
get
{
IEnumerable<Address> addresses = null;
using(MyDb db = new MyDb())
{
addresses = db.Addresses.Where(a => a.ParentId == this.PersonId)
}
return addresses;
}
}
ありがとう!