1.重写ID [Column("数据库指定的ID")]

 [Column("CarTypeID")]
 public override int Id { get; set; }


2.映射中指定 这里用的是AutoMapper

第一个UserID是Dto模型里面的 第二个Id是实体类中我们重写的那个Id

1 var carTypeDtoMapper = mapperConfig.CreateMap<CarType, CarTypeDto>();
2 carTypeDtoMapper.ForMember(dto => dto.CarTypeID, map => map.MapFrom(m => m.Id));

3.对于多表查询外键ID无效的情况 可以在实体中指定外键

1 [ForeignKey("CarBrand")]
2  public int? BrandID { get; set; }

对于ForeignKeyVS给我们做了良好的解释

1 //如果将 ForeigKey 特性添加到外键属性,则应指定关联的导航属性的名称。如果将 ForeigKey 特性添加到导航属性,则应指定关联的外键的名称。如果导航属性具有多个外键,则使用逗号分隔的外键名称列表。有关更多信息,请参见批注。
2  public ForeignKeyAttribute(string name);

4.获取数据 将数据返回 这里用的是DTO模型传输数据

1  var list = _carTypeRepository.GetAllList();
2 //将POCO对象转为DTO对象
3  return list.MapTo<List<CarTypeDto>>();