Owa*_*shi 5 c# linq-to-entities entity-framework visual-studio-2010 entity-framework-4
您好,我带着另一个问题回来了,我已经开始使用 EF,但遇到了问题。
概述:
我制作了一个 EF 模型,发现一个表(名为 UserRoles)没有出现在 EF 模型图中,我尝试通过“更新数据模型”添加它,但向导没有向我显示该表添加(就像已经添加一样),我还尝试通过“更新数据模型”向导刷新模型,但没有帮助。
问题解释:
原始数据库图。

部分EF模型图

我尝试通过“更新数据模型”添加它

我尝试将 EF 图中的实体重命名为“UserRoles”,弹出错误消息。

PS:我认为我已经很好地提出了这个问题,但是请让我知道您可能需要的任何更多信息。
好吧,你现在使用的是对象,不再需要 sql。
而对于 EF,多对多关系不需要特殊的“实体”,而是需要特定的“关系”。
在用户类中,您将有一个角色列表,在角色类中,您将有一个用户列表。这完美地代表了一种简单的多对多关系。
如果你的关系表中至少有另一个属性(一个“RelationName”字符串,例如 - 愚蠢的 - 示例),那么它将存在于 EF 模型中......
编辑:不确定您需要什么:这只是“对象”方式。想想如果您不使用数据库,您将如何创建这些类:您将在关系的每个部分中列出其他类。但Sql不能做到这一点(数据库中不能有“列表”),所以Sql需要一个关系表。但EF是一个ORM,所以是对象,而不是sql。
编辑2:
您在 Code First 中创建关系的方式,但它非常明确 http://blogs.msdn.com/b/wriju/archive/2011/05/14/code-first-ef-4-1-building-many -对多关系.aspx
要获得更多答案,只需谷歌“实体框架多对多”即可解决问题
| 归档时间: |
|
| 查看次数: |
4914 次 |
| 最近记录: |