【发布时间】:2011-06-16 20:03:18
【问题描述】:
我正在使用实体框架,但遇到了一个奇怪的构建错误。
我正在建立一个论坛,并在数据库中为“忽略”设置了一个表,当人们不喜欢对方时,他们会忽略某人。该表有两列,它们一起是主键。
PK InitiatingUser
PK IgnoredUser
当 EF 映射此表时,我收到此错误:
错误 7 错误 3034:从第 1467、1477 行开始映射片段时出现问题:具有可能不同键的两个实体映射到同一行。确保这两个映射片段将 AssociationSet 的两端映射到相应的列。
我在 XML 编辑器中打开 edmx 并导航到有问题的行。
<MappingFragment StoreEntitySet="Ignores">
<ScalarProperty Name="IgnoredUser" ColumnName="IgnoredUser" />
<ScalarProperty Name="InitiatingUser" ColumnName="InitiatingUser" />
</MappingFragment>
我刚刚开始使用 EF,我不明白发生了什么或问题可能是什么。
编辑
ignores 之间的关系用于将启动用户和被忽略用户的外键映射到 users 表的主键(用户名)。这就是我第一次将 EF 映射到该表时的情况。从那以后,我删除了 FK 以查看是否有帮助,但没有。
【问题讨论】:
-
数据库中的关系是什么样的?
-
查看我对关系的编辑。
标签: entity-framework entity-framework-4 entity-relationship