基于另一个属性约束属性值

时间:2014-03-14 10:44:25

标签: database entity-framework database-design database-schema

我有一个带有制造商和型号属性的汽车实体类型。我想限制制造商的属性值。此外,当选择特定制造商属性值时,可用的模型属性值应与该特定制造商相关。

我考虑为每个制造商实施制造商实体类型和单独的子实体类型。每个子实体类型将依次从查找实体类型中绘制模型值。

但是,每个制造商都具有相同的属性集,并且实现子实体类型似乎并不正确。此外,当我每次想要代表制造商时添加新的子实体类型时,架构将增长到大量的表。

实施这些约束的最佳方法是什么?

谢谢

enter image description here

1 个答案:

答案 0 :(得分:2)

您的问题是您没有直接表示汽车与其车型之间的关系。不要直接将汽车与其制造商联系起来,通过模型联系。

以这种方式实施您的数据模型:

ERD

在您的实体框架模型中,您现在可以轻松查看任何汽车的品牌和型号。在将模型分配给新的汽车对象时,您可以从选定的品牌向下钻取到可用的模型。

如果这是一个包含历史数据的强大应用程序,您可能必须在混合中包含year,这样模型只存在一定年份。