0

在数据库中,我有两个表UserOrganization一个桥接表Users_Orgs

Users_Orgs表有一个由两列userId和组成的复合键organizationId。当我使用设计器创建关联时,它会为引用约束创建两个主体 -UsersUsers_Orgs. 问题出在Users_Orgs约束上——它有一个由organizationId和组成的键userId。由于organizationId不在User表中,因此无法映射,因此无法编译。

Users_Orgs 表 Users_Orgs 约束

单击“删除”按钮时,对话框将关闭并organizationId仅映射到用户表的主键(不是 userId)

如何在现有数据库上使用复合键进行多对多映射?

4

1 回答 1

1

为什么你的模型中有桥接表?如果您在此表中没有其他属性,则不需要它。否则,您应该只建模和之间的关系UsersOrganizations正确配置多对多的多重性。EF 将自动为此关系创建桥接表和映射。

解决您的问题:桥接表是依赖的,而不是主体。在约束中切换角色并将User.UserIdPK 映射到Users_Orgs.UserIdFK。

于 2012-02-02T19:37:47.813 回答