3

Field1 PK int not null Field2 PK int not null当我想映射此表时,我有这样的表我收到此错误

Error   3   Error 3034: Problem in mapping fragments starting at lines 2212, 2218:
Two entities with possibly different keys are mapped to the same row.
Ensure these two mapping fragments map both ends of the AssociationSet to the corresponding columns.

我试图在模型中删除并重新创建该表。当我添加表时,它给出了另一个错误,但最后我总是得到这个错误

我该如何处理这个问题请帮助我...

4

3 回答 3

3

当我调查这个问题时,我意识到了一些事情,因为我之前读过一篇关于这种数据模型情况的文章,并且我理解了问题发生的原因。(实体框架中映射片段的问题)

实际上问题来自表映射,因为我说该表具有多对多关系,所以那篇文章说,如果您将该表放入模型设计中,它总是会给我们这个错误,最后当我们在设计端删除该表并在其中静默添加表时数据模型,因此可以构建程序。我告诉你这个是因为也许你可以为此提出一个想法,因为我学到了这一点,当我在模型中添加新视图时,vs 没有给我任何错误。

这是删除红框内那个表时的旧模型图片程序没有任何错误并继续使用底部表

在此处输入图像描述

在此处输入图像描述

于 2014-09-11T06:35:19.190 回答
1

如果没有其他方法,请尝试删除并重新创建整个 .edmx 文件。

当我将几个多对多表添加到现有的 Entity Framework 6.2 项目时,我遇到了这个问题。我尝试删除并重新生成模型中的所有表。似乎没有任何效果。我相信在 EF 项目的某个地方有一些“垃圾”导致了这个问题。

在重新生成 edmx 时,我添加了项目中的所有表,包括多对多表。

于 2019-02-18T09:11:46.567 回答
0

错误解决方案:3034

PK 用户 ID;PK 角色 ID

两个主键不允许 edmx file.so 在该表中创建 sno 列并将其设为主键。去掉 UserId 和 RoleId 的 pk。现在在那两列中没有可用的主键。

喜欢

PK 斯诺; FK 用户 ID;FK 角色 ID

于 2019-06-26T12:28:04.247 回答