私のデータベースが設定されているため(私は制御できません)、Entityで把握できない外部キー状況がありますフレームワーク。私はFluent APIを使って私の関係を設定しています。私のクラスは、Entity Frameworkの関係は2つのテーブルのエンティティように、私は流暢API外部キーマッピングを設定するにはどうすればよい非標準の非一意の外部キー
SELECT *
FROM Parent
JOIN Child
ON Child.ChildForeignKey1 = Parent.ParentForeignKey1
AND Child.ChildForeignKey2 = Parent.ParentForeignKey2
ようParentForeignKey
とChildForeignKey
分野に参加するようなものであるべきである
public class Parent
{
// Unique primary key
public int PrimaryKey { get; set; }
// These two fields together compose the foreign key to join to Child
public string ParentForeignKey1 { get; set; }
public string ParentForeignKey2 { get; set; }
public List<Child> Children { get; set; }
}
public class Child
{
// Unique primary key
public int PrimaryKey { get; set; }
// These two fields together compose the (non-unique) foreign key to join to Parent
public string ChildForeignKey1 { get; set; }
public string ChildForeignKey2 { get; set; }
// The parent/child relationship is implicit, even though the tables
// themselves indicate a many-to-many relationship
public List<Parent> Parents { get; set; }
}
ですフレームワークはDbSet
を照会するとこれらの結合を生成しますか?
を作ると思います。コード内にリストがあるはずはありませんか? –
jdweng
良い点。私は質問を更新します。私は、親子関係が暗黙的であるため(SQL結合が実際には多対多であっても、子ごとに1つの親しか存在しないため)、それを入れませんでした。 –