同じテーブル(EF7 /コア)を参照する多対多リレーションシップの定義

.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多対多関係によると

結合表を表すエンティティークラスのない多対多の関係は、まだサポートされていません。ただし、多対多の関係は、結合表のエンティティ・クラスを組み込み、2つの別個の1対多の関係をマッピングすることで表現できます。



Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ