1

継承を使用して EF6 でモデルを実装しようとしています

私は次のクラスを持っています:
Base
Comments
Page : Base
BlogPost : Base

Page と BlogPost の両方が同じ方法でコメントを使用する場合。だから私はベースを次のように定義します

public class Base
{
    public int ID { get; set; }
    // ...
    public ICollection<Comment> Comments { get; set; }
}

そして、次のように定義されたコメント クラス:

public class Comment
{
    public int ID { get; set; }
    public int RelatedItemID { get; set; } // points to Base::ID
    public string Text { get; set; }
}

データベースを「タイプごとのテーブル」としてセットアップしたいとします。そのため、自動インクリメント int PK を持つ Page と BlogPost のそれぞれに個別のテーブルがあります。

これで、EF は Comment.RelatedItemID が指しているテーブルを認識しましたか? つまり、ページまたはブログ投稿

「階層ごとのテーブル」に頼らずにこれを実装する最良の方法は何ですか?

4

1 に答える 1