我目前在我的 EF Code First MVC 项目中有以下模型(为简洁而编辑):
public class Car
{
public int Id { get; set; }
public string Descrip { get; set; }
// Navigation Property.
public virtual CarColour CarColour { get; set; }
... + numerous other navigation properties.
}
public class CarColour
{
public int Id { get; set; }
public string ColourName { get; set; }
}
数据库中的 CarColour 表包含许多行。
在我的项目中,我有大约 10 个此类表,它们本质上是查找表。
我的任务不是有 10 个查找表(和 10 个相应的代码中的“硬”类型),而是实现一种更可重用的方法,而不是拥有大量特定于 Car 的查找表(在本例中)有几个表,其中一个可以保存项目类型(颜色、燃料类型等),一个包含每种类型的各种值。我们的想法是我们的模型将能够被许多其他项目重用——其中一些可能具有数百种不同的属性,因此,我们不想在代码中创建新的类/类型并生成每个都有一个新的查找表。
我很难理解这种方法的 c# 实现,希望有人能给我一个例子,说明如何在代码中实现这一点,更具体地说,上述模型需要如何更改,以及哪些附加类需要完成这个吗?