Domain driven design 域中查找值的建模

Domain driven design 域中查找值的建模,domain-driven-design,lookup,domain-model,Domain Driven Design,Lookup,Domain Model,在领域驱动设计中,我有以下情况 我有一个汽车模型。车辆可以是掀背车、轿车、卡车等类型 VehicleType存储在数据库查找表中 问题是: 如何对域进行建模 我是否按以下方式对其建模: public class Vehicle { public int VehicleId{Get;Set;} **public int VehicleTypeId { get; set; }** public string MakeCode { get; set; } public

在领域驱动设计中,我有以下情况

我有一个汽车模型。车辆可以是掀背车、轿车、卡车等类型

VehicleType存储在数据库查找表中

问题是:

如何对域进行建模

我是否按以下方式对其建模:

public class Vehicle
{
    public int VehicleId{Get;Set;}
    **public int VehicleTypeId { get; set; }**
    public string MakeCode { get; set; }
    public string ModelCode { get; set; }
    public int Power { get; set; }
    public int Weight { get; set; }
    public int PowerToWeight { get { return Power/Weight*100; } }     

}

如果我使用第二种方式,在什么阶段填充VehicleType模型

谢谢

If I use the 2nd way, at what stage do I populate the VehicleType model.
在创建“Vehicle”的新实例时,应设置双向
VehicleType
VehicleTypeId
VehicleType

  • 如果
    Vehicle
    指的是
    VehicleTypeId
    ,则设置指定的标识符
  • 如果
    Vehicle
    指的是
    VehicleType
    ,则设置
    VehicleType
    的实例。首先,需要加载具有指定标识符的
    VehicleType
    实例

  • 通常我使用第二种方法,因为它从实体及其关系的角度来描述域模型。

    您不能为
    车辆类型使用枚举,而不是使用id吗?
    然后,您的模型可以包含枚举,之后可以将其映射到数据库id。
    我想你需要用下拉列表或类似的方式显示它们的描述?
    这使得
    VehicleType
    类成为单独读取模型的良好候选

    public class VehicleType
    {
        public int VehicleTypeId{Get;Set;}
        public string Description{Get;Set;}   
    
    }
    
    If I use the 2nd way, at what stage do I populate the VehicleType model.