投稿には多くのトピックを含めることができます。トピックは多くの投稿に割り当てることができます。トピック リストから 2 つのトピックを選択して投稿を追加するNULL
と、トピック テーブルにも 2 つのトピックが挿入されます。Id=34
およびを参照してください35
。私は何を間違えましたか?トピックは変更しないでください。新しい投稿を追加し、一定数のトピック (ドロップダウン リスト) からトピックを選択しています。PostTopics テーブル (PostID、TopicID) で追跡されます。
トピック表:
Id TopicName TopicDesc 31 Sports Sports 32 Game Game 33 Politics Politics 34 NULL NULL 35 NULL NULL
TopicPosts テーブル:
Topic_Id Post_Id
34 11
35 11
public class Post
{
public int Id { get; set; }
public int UserId { get; set; }
public virtual ICollection<Topic> PostTopics { get; set; }
}
public class Topic
{
public int Id { get; set; }
public string TopicName { get; set; }
public virtual ICollection<Request> Requests { get; set; }
}
// insert code: I think the problem is here
using (var context = new ChatContext())
{
// Post
context.Posts.Add(pobjPost);
pobjPost.PostTopics = new List<Topic>();
// topics
foreach (var i in pobjTopics)
{
pobjPost.PostTopics.Add(i);
}
context.SaveChanges();
}