【发布时间】:2019-06-04 13:22:58
【问题描述】:
我有一个实体/表purchases。此表有一个customerId。
我还有另一张桌子customers。此表有customerId。
一个客户可以进行多次购买。但是这个数据库只是主数据库的视图/表示。这意味着客户可能在场,也可能不在场。但是如果存在购买将始终有customerId。表中可能还没有对应的客户。
我想使用带有客户信息的 EF6 读取 Purchases(如果存在或仅为空)。
如何在 EF6 中进行设置?
只要我将 customerId/Customer 添加到购买中,EF 就会创建一个外键并防止在客户不存在的地方插入购买。我希望它们两个表是独立的,并且仅在购买时填充客户。
有什么想法吗?
【问题讨论】:
-
好吧,如果您有非空客户 ID,但没有具有该客户 ID 的客户记录 - 那么您无法在数据库中定义关系(因此无法定义 EF)。因此,正如您所提到的,您需要让他们保持独立,没有任何关系。然后,您需要从购买到客户的过程中进行 LEFT JOIN。
标签: c# sql .net entity-framework-6