我具有以下模型和OnModelCreating方法来设置联结表:
public sealed class MessageStackContext : DbContext
{
public DbSet<Account> Accounts { get; set; }
public DbSet<Chat> Chats { get; set; }
public DbSet<Contact> Contacts { get; set; }
public DbSet<Message> Messages { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Chat>().
HasMany(c => c.Participants).
WithMany(p => p.Chats).
Map(
m =>
{
m.MapLeftKey("ChatId");
m.MapRightKey("AccountId");
m.ToTable("AccountChats");
});
}
}
当我创建新聊天时,具有以下属性:
string Name { get; set; }
List<Message> Messages { get; set; }
List<Account> Participants { get; set; }
新条目已添加到数据库的“聊天”表中,但联结表也未收到条目。
我的实体框架多对多配置不正确吗?