• 欢迎光临~

AutoMapper

开发技术 开发技术 2022-12-25 次浏览

什么是AutoMapper

AutoMapper是一个对象和对象间的映射器。对象与对象的映射是通过转变一种类型的输入对象为一种不同类型的输出对象工作的。让AutoMapper有意思的地方在于它提供了一些将类型A映射到类型B这种无聊的事情的有趣惯例。只要类型B遵守AutoMapper已经建立的惯例,大多数情况下,映射两种类型零配置就可以了。

省去了new实例化的操作,不用单个赋值,可以直接进行数据映射

AutoMapper的使用

第一步 Nuget下载AutoMappert和 AutoMapper.Extensions.Microsoft.DependencyInjection

AutoMapper

第二步:在UI层新建一个类 Profile 结尾(RbacProfile.cs),类继承Profile,创建构造函数,在构造函数中通过CreateMap完成对象映射
public class RbacProfile:Profile//当前类继承Profile
    {
    	//构造函数
        public RbacProfile()
        {
        	//使用CreateMap完成对象映射
            CreateMap<Per_RoleDto, Permission>();
            CreateMap<Permission, Per_RoleDto>();
            CreateMap<User, User_RoleDto>();
            CreateMap<User_RoleDto, User>();
            CreateMap<User_Role, User_RoleDto>();
        }
    }
第三步:.在Progron.cs 当中 完成注入
//注入AutoMAPPER(RbacProfile为自己创建的类)
builder.Services.AddAutoMapper(typeof(RbacProfile));
第四步:在控制器当中 完成构造函数注入
private readonly IMapper _mapper

第五步:使用_mapper.Map进行转换

var objUser =  _mapper.Map<User>(userDto);

var result = _mapper.Map<List<LoginResponseDto>>(list);
程序员灯塔
转载请注明原文链接:AutoMapper
喜欢 (0)