Object Mapper:AutoMapper

1.add service to provider (need nuget a package before add this service)

services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies());

2.create a mapperProFile(this class need inherit Profile)

public class CompanyProfile:Profile
{
//映射的配置文件
public CompanyProfile()
{
//从Company映射到CompanyDto
//约定:1.原属性和目标属性一样的话,他属性的值就会赋给目标属性
//2.如果目标的属性再原属性中不存在,直接就忽略了,不会对它进行赋值
CreateMap<Company, CompanyDto>()
//执行手动映射(常用)
.ForMember(
//Name 映射到 CompanyName
memberOptions: opt => opt.MapFrom(mapExpression: src => src.Name),
destinationMember: dest => dest.CompanyName
);
CreateMap<CompanyAddDto, Company>();//属性名称一样,这样写就可以了
}
}

3.use mapper

var companyDto = _mapper.Map(company);

也可以将集合映射成另一个集合

_mapper.Map<IEnumerable>(companies);

Object Mapper:AutoMapper

上一篇:关于@GetMapping、@PostMapping、@PutMapping、@DeleteMapping的理解


下一篇:UC,手机浏览器可以支持Apple watch,还是第一家!