我有两个表和一个联结表。
AspNetUsers和Tenant表已添加到我的实体框架中。
但是一旦我添加了UserTenant表,它就会以关联而不是实体结束。
有人可以告诉我为什么会这样吗?
答案 0 :(得分:2)
这是因为此联结表的唯一功能是创建多对多关系。
当EF找到一个只有FK到其他表的列的表,并且它们组成主键时,它只是将它转换为多对多关系。
如果您需要访问联结表,则需要破坏该规则。最简单的方法是在联结表中添加一个新列,它不是FK的一部分,也不是PK。如果这样做,联结表将成为模型中的实体。但是你将失去导航到相关实体的简单方法(它仍然可能,但有点难)。 See this for more details
如果使用Code First,您还可以read this article提供另一种方法。如果您阅读它,请不要错过评论。有几个非常有趣的