【发布时间】:2010-04-26 12:18:00
【问题描述】:
我在挠头;我有一个具有多对多关系的 Car 表和 Customer 表。在这个关系表中,我想添加一个可以告诉我这是什么关系的列;是客户试驾汽车,他想买车吗,等等。我想要结束的是一个类 Car 对象,它包含一个客户集合和关系信息。我可能会以错误的方式看待这个问题,所以请随时将我推向正确的方向。
【问题讨论】:
-
我们回答您的问题了吗?如果没有,我们可以了解更多细节吗?
我在挠头;我有一个具有多对多关系的 Car 表和 Customer 表。在这个关系表中,我想添加一个可以告诉我这是什么关系的列;是客户试驾汽车,他想买车吗,等等。我想要结束的是一个类 Car 对象,它包含一个客户集合和关系信息。我可能会以错误的方式看待这个问题,所以请随时将我推向正确的方向。
【问题讨论】:
使关系成为一个实体:
class CarRelation
{
Car Car {get; set; }
RelationType Type {get; set;}
}
纯多对多关系没有任何附加属性。
【讨论】:
我认为您缺少一个额外的实体。您需要添加一个实体来表达客户对汽车的兴趣。您需要找到适合您业务领域的正确名称,但这是我的猜测:
您有 CUSTOMER 表来存储有关特定客户的信息。 CUSTOMER 与 CUSTOMERINTEREST 表具有一对多的关系。 CUSTOMERINTEREST 存储有关客户参与的购物活动类型(试驾、橱窗购物等)的信息。 CUSTOMERINTEREST 与 CAR 表具有多对一的关系。 CAR 将有关特定汽车的信息存储在商店的库存中。
所以,我最好的猜测是,如果你的关系中间的东西需要更多的列而不仅仅是两个外键,那么你实际上并没有多对多的关系。您有两个多对一关系,只是尚未确定中间的事物。
【讨论】: