我正在使用 VS 2010 实体框架设计器来修改一些从数据库自动生成的实体。
数据库结构由我正在为其构建 UI 的产品定义,因此我无法对其进行修改。
该数据库具有多对多关系的表,这些表完全基于两个表上非键列中的公共值。
- 表 1用户有一个 id 列userId和另一个名为userProfile的列。
- 表 2 SecurityProfile有一个 id 列securityProfileId并且还有一个列userProfile。
换句话说,用户配置文件只是用户到 SecurityProfiles 的映射的名称。
该向导为 Users 和 SecurityProfile 表创建了实体。我创建了一个名为 UserProfile 的新实体,它有一个关键字段:userProfile。
我创建了从 UserProfile 到 User 以及从 UserProfile 到 SecurityProfile 的一对多关联。这一切都很好,只是 UserProfile 实体没有表映射,所以它不会编译。
如何在实体框架中创建此关联?
更新:
如果无法使用 EF(如第一个答案所建议的那样),是否可以手动创建一个非绑定实体,我可以使用它来链接这两个实体,以便我公开一个至少更容易一点的对象模型导航?
即,我将使User和SecurityProfile实体抽象并手动定义这些扩展,并使用指向我手动创建的 UserProfile 实体的适当属性