.NET Core AutoMapping 对象映射器转换

先在NuGet程序包里下载这个文件

然后新建一个类继承:Profile

using AutoMapper;
using RBAC_Domain;
using RBAC_Domain.DTO;

namespace RBAC_Service.MyProFiles
{
    /// <summary>
    /// 转换对象映射器类
    /// </summary>
    public class MappingProfile : Profile
    {
        //构造函数
        public MappingProfile()
        {
            //把用户DTO转换成用户
            CreateMap<UsersDTO,Users>().ReverseMap();
        }
    }
}
program.cs里注入
//注入AutoMapper
builder.Services.AddAutoMapper(typeof(MappingProfile));

   //然后调用的时候通过构造函数注入这个接口 直接调用就行了
  private readonly IMapper _mapper;

	//然后在方法里转换
     public async Task<ApiResult> AddUser(UsersDTO usersDTO)
     {
          ApiResult apiResult = new ApiResult();
          //对象映射转换 ()里放要转换的DTO<>里放转换后的实体
          var users = _mapper.Map<Users>(usersDTO);
          //不对应的字段必须自己赋值
          users.UId=YitIdHelper.NextId().ToString();
          var res = await _usersRepository.AddAsync(users);
         
          return apiResult;
     }

posted @ 2024-03-04 14:03  Oyx。  阅读(62)  评论(0)    收藏  举报