在实体框架中两次引用同一个表

时间:2012-02-23 21:30:00

标签: c# entity-framework

如果您尝试两次引用同一个表,是否有人可以告诉我是否存在实体框架的使用?

例如,我有3个表

  • 故事
  • 用户
  • Xref_users。

    故事有一个用户ID来识别所有者,但也需要有一组可以查看它的用户。

    当我创建edmx时,它会向用户进行正确的导航,但不会向用户进行导航。相反,它引用了xref_user。

现在我和另外3个表做了同样的事情

  • 投票
  • 条目
  • Xref_Votes

edmx马上认识到这一点并在Entry下创建了导航投票。

我在这里看到的唯一区别是Story引用了User两次

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

你的问题不是很清楚。看起来Xref_users是一个连接表。连接表应仅包含多对多关系中涉及的2个表的主键。因此,Xref_users列应该看起来像

  • UserId(PK,FK to Users)
  • StoryId(PK,FK to Story)

答案 1 :(得分:0)

我认为Xref_users有另一个列,因为EF只支持many to many without "payload",所以该工具在story和xref_users之间创建了导航属性,而不是按预期在故事和用户之间创建