我已經創建了具有指向同一類型的多個項目集合屬性的實體類型映射。換句話說,它反映了一個單獨的數據庫表,其中行被任意分組,使得一行可以出現在多個組中。實體框架代碼優先:如何將多個自引用許多一對多的關係
在下面的簡單示例中,Person
類有Brothers
和Sisters
集合屬性也引用Person
實體:
public class Person
{
public Person()
{
Brothers = new Collection<Person>();
Sisters = new Collection<Person>();
}
[Key]
public string Name { get; set; }
public int Age { get; set; }
public virtual ICollection<Person> Brothers { get; set; }
public virtual ICollection<Person> Sisters { get; set; }
}
實體框架似乎認爲這是一個有效的模式,但其解釋創建單身PersonPersons
連接表,未能體現兄妹關係的分離。
我認爲,解決辦法是用流利的API顯式地映射單獨的連接表的兩個關係,但是,儘管有大量的實驗,我一直無法得到這個工作。
有什麼建議嗎?
感謝, 添
你有沒有試過,HasMany(p => p.Brothers).WithMany(b => b.Persons).Map(m => m.Table(「Person_Brothers」);還沒有嘗試過這種類型的關係,但那我們如何U映射多對多時EF不會合作。 – trevorc 2014-11-14 14:09:03