看来我不允许发布图片,所以让我描述一下图片。它是一个 SQL 表图,显示了 4 个表之间的关系。这些表格是:
- 人们
- ID
- 名
- 姓
- 电话号码
- ID
- 数字
- 电话号码类型
- ID
- 姓名
- 描述
- 人电话号码
- 个人身份
- 电话号码类型 ID
- 电话号码 ID
两个主要表是 People 和 PhoneNumbers。还有一个 PhoneNumberTypes 描述了 PhoneNumber 的类型(家庭、工作等)。
PeoplePhoneNumbers 表用作 People 和 PhoneNumbers 之间的多对多关系表。然而,它也连接到 PhoneNumberTypes 来描述这种关系。
我一直试图弄清楚如何处理这个实体框架,因为 EF 不允许您向关联(多对多)表添加其他信息。
除了 PhoneNumberType 信息之外,我还发现它们是我需要在关联表中记录的附加数据,例如“开始日期”、“结束日期”等。
到目前为止,我想出的唯一解决方案是在 EF 中创建一个实体,将 PhoneNumberTypes、PhoneNumbers 和 PeoplePhoneNumbers 中的字段组合成一个实体。然后使用 SQL 存储过程对它进行 CRUD 操作。
我更喜欢以 EF 为中心的解决方案。有人知道吗?