【发布时间】:2014-07-30 00:49:51
【问题描述】:
这是我的表结构:
人物
PersonID int
地址
AddressId int
Address varchar
人员地址
PersonID int primary key references Person.PersonID
AddressID int primary key references Address.AddressID
如您所见,Person 和 Address 之间没有关系。当我将这 3 个表添加到 EF 6.0 时,它不会添加 PersonAddress 表,而是添加 Person 和 Address 之间的关系。我很困惑。
【问题讨论】:
-
这正是它应该在 EF 中工作的方式,而这正是您试图在对象中建立的关系
-
您如何将其“添加”到实体框架中?您是否使用代码优先?如果是这样,请向我们展示您的课程!通常,EF 将对具有多个地址的
Person和可能属于多个人的Address的 conceptual 模型进行建模 - 但它会“隐藏”在数据库。不用担心! -
@marc_s 谢谢。我正在使用数据库优先模型。因此,EF 明智地假设地址可以在多人之间共享,并且一个人可以拥有多个地址。我认为它会添加我告诉它添加的所有表,并将其显示在 EDMX 图中。这太酷了。关于它的任何文件?谢谢。我将使用它生成的内容,看看是否满足我的需求。
-
如果你有一个数据库模型,你应该可以右击你的设计图面然后去
Generate Database from Model。您将获得用于生成数据库的 SQL - 我确定您也会在其中看到“链接”表! -
文档:使用 MSDN 和通常的 Microsoft Dev Cenver for EF - 这是你能找到的最好的文档
标签: sql entity-framework