定義引用同一個表(EF7 / core)的多對多關係

.net c# entity-framework entity-framework-core many-to-many

該模型具有項目實體。並且將存在依賴於( 使用 )其他項目的項目。多對多的關係。例:

Item A is used by Item B, C, and F.
Item B is used by Item C, F and H.

如何正確定義不同項目之間的方向關係?

項目:

public class Item
    {
    public int Id
        { get; set;}
    public string Name
        {get; set;}
    }

我定義依賴關係的第一種方法是:

public class ItemDependency
{
    [Key]
    public int Id
    { get; set; }

    [ForeignKey("ItemParentId")]
    public Item ItemParent { get; set; }

    public int ItemParentId{ get; set; }

    [ForeignKey("ItemDependentId")]
    public Item ItemDependentId { get; set; }

    public int ItemDependentId { get; set; }

}

一般承認的答案

根據文檔EF7多對多關係

尚不支持沒有實體類來表示連接表的多對多關係。但是,您可以通過包含連接表的實體類並映射兩個單獨的一對多關係來表示多對多關係。



Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
這個KB合法嗎? 是的,了解原因