我先使用EF DB。
我已经提出了一个观点。
将其映射到EF。
现在我收到以下错误:
错误2错误111:主要角色应用程序引用的属性必须 与EntityType MaMDBModel.App的密钥完全相同 由关系约束中的主体角色引用 关系MaMDBModel.FK_AppsData_App。确保所有的钥匙 属性在主体角色中指定。 D:\ MaM \ Dev \ MamAdmin_1.0 \ MaMDBEntityFramework \ MaMModel.edmx 768 11 MaMDBEntityFramework
这是我的edmx:
答案 0 :(得分:9)
edmx文件中有一条错误消息:
<!--Errors Found During Generation:
warning 6002: The table/view 'MamDB.dbo.VW_APPSDATA' does not have a primary key
defined. The key has been inferred and the definition was created as a read-only
table/view.
-->
EF推断出的关键可能是错误的。根据消息,您应该在数据库中为视图定义主键。
答案 1 :(得分:3)
一个相当老的问题,但今天仍然有意义,所以我认为我应该分摊2美分。如果事实证明,重新映射两个表之间的关系比它值得的麻烦更多(如我的情况),则可以尝试从EDMX中删除问题表,进行保存,然后将它们重新添加到EDMX中。 / p>
答案 2 :(得分:2)
在一个巨大的项目中出现了同样的错误,基本上.edmx文件的Diagram视图如此之大,你甚至没有找到关注的表而没有搜索几天。
以下是我可以解决的问题:
在我的情况下,我添加了一个列,EF认为它是PK,但事实并非如此。所以我要设置列属性Entity Key = False
,这就解决了它。