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>>();