0
我有以下流暢的配置,用於在用戶和角色之間建立簡單的多對多關係。我需要導航屬性兩種方式,因此有角色中的用戶集合,反之亦然。與EF5多對多2種方式的關係
當我向用戶中插入一個新實體時,EF會嘗試插入一個Role_Id列,當我使用以下方法映射它時。該列顯然是RoleId,而不是Role_Id,而且它在許多表中。用戶上不能有Role_Id。
我想通過在兩邊收集EF會讓某些方面感到困惑。
modelBuilder.Entity<User>().HasMany(_ => _.Roles).WithMany()
.Map(_ =>
{
_.MapLeftKey("UserId");
_.MapRightKey("RoleId");
_.ToTable("UserRole", "dbo");
});
當我試圖創建關係的另一種方式,通過將以下配置上面一個後,我得到一個異常,說明該關係已定義。
modelBuilder.Entity<Role>().HasMany(_ => _.Users).WithMany()
.Map(_ =>
{
_.MapLeftKey("RoleId");
_.MapRightKey("UserId");
_.ToTable("UserRole", "dbo");
});