1
我有一个要求,用于在EntityFramework中使用单一表中存储多个多对多关系。对多个多对多关系使用单个映射表
有这个要求,许多M2M的关系,而是通过例如突出,主要有:
实体 EntityGroup 地址
每个实体可以链接到多个地址的记录,每个实体可以链接到多个EntityGroup记录。我想用一个表来管理这些对象之间的关系 - 是这样的:
RelationshipType LeftID RightID
EntityGroupEntity 1 74
EntityGroupENtity 1 83
EntityAddress 74 17
在上面的例子中,EntityGroup“1”包含两个实体“74”和“83”的ID,并实体“74”具有链接到它的地址“17”。
我注意到在Fluent API中有使用MapLeft和MapRight的Mapping选项,但似乎没有办法告诉它在访问列表时要查找哪种关系。这可能吗?我没有任何运气在网上找到我的问题的答案 - 可能是因为我没有正确地问它!
任何帮助,将不胜感激。
谢谢。
在表中使用列查找关系是使用RDBMS的一个非常糟糕的选择。有了RDBMS,你基本上可以抛弃它擅长的* cleaver *方法来创建表之间的关系。 –
坏主意 - 你会破坏参照完整性,优化技术等,以避免有多个表。 –
虽然我意识到这不是什么被归类为“最佳实践”,并且在所有应有的尊重下,我正在寻找一种可能的解决方案。如果对象之间的链接正确存储在表中,则不会破坏参照完整性。 – TwistedMellow