【发布时间】:2012-10-24 00:08:10
【问题描述】:
首先说,这是我第一次使用实体框架,所以如果这最终成为一个新手问题,我深表歉意。到目前为止一切都很顺利;但是,我遇到了一种情况,我不确定最好的处理方法是什么。
我需要创建一个多对多的关系;但是,多对多表不仅仅包含复合键。在这种情况下,实体框架不会将其识别为多对多结构,因此我似乎无法在不使用中间表的情况下轻松获取集合。有没有更好的方法来做到这一点?
简化示例:
- 一个单元可以有多个板,一个板可以包含在多个单元中
- 当它在一个单元中时,我们需要记录它在哪个插槽中。
表格:
Unit
UnitID(PK)
UnitName
Board
BoardID(PK)
BoardName
UnitBoard
UnitID(PK,FK1)
BoardID(PK,FK2)
Slot
当我使用 ADO.NET 实体数据模型将其提取到我的代码中时,我看不到从单元实体获取与单元关联的板集合的简单方法,反之亦然。
有没有更好的方法来做到这一点,还是我只需要使用相关的 UnitBoards 集合然后使用它来构建 Units/Boards 的集合?
看来我可能不是第一个去做这种事情的人。例如:我在考虑想要保留相关 BookOwner 信息(如购买日期)的图书和所有者。
【问题讨论】:
标签: .net database oracle entity-framework ado.net