リンクテーブルに関する2つの協会
-
25-10-2019 - |
質問
私は名前が付けられたリンクテーブルを持っています:blogsblogpostsという名前の2つの他のテーブルを関連付けます:ブログとブログポストを一緒に、リンクテーブルをエンティティのリストに表示したいと思います。このような?:
public class BlogsBlogPostConfiguration : EntityTypeConfiguration<BlogsBlogPost>
{
public BlogsBlogPostConfiguration()
{
this.HasRequired(bb => bb.Blog)
.WithMany(b => b.BlogsBlogPosts)
.HasForeignKey(bb =>bb.BlogID);
this.HasRequired(bb => bb.BlogPost)
.WithMany(bp => bp.BlogsBlogPosts)
.HasForeignKey(bb => bb.BlogPostID);
}
}
解決
はい。私のために残っている唯一の質問は、次のことです。 BlogsBlogPost
? 2つのオプション:
のような明確なキープロパティがあります
public int BlogsBlogPostID { get; set; }
またpublic int ID { get; set; }
このエンティティで。この場合、(BlogID
,BlogPostID
)ユニークである必要はありません。または、(
BlogID
,BlogPostID
)。これをでマークする必要があります[Key]
ANTATIONまたはFLUENT APIで定義する:this.HasKey(bbp => new { bbp.BlogID, bbp.BlogPostID });
今の組み合わせ(
BlogID
,BlogPostID
)ユニークでなければなりません。これはもっとです」リンクテーブルの追加データとの多くの関係「関係のタイプ。
両方のモデルが可能です。使用することは、ビジネスのニーズによって異なります。
所属していません StackOverflow