.net mvc里AutoMapper更为便捷的使用方法

本文介绍了一种简化AutoMapper使用的高效方法。通过在Appstart中创建MapperConfig类并使用静态方法Execute,可以批量处理DTO到实体的映射,避免了繁琐的初始化过程。此方法适用于多个映射场景,显著提高了开发效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:AutoMapper的下载安装我就不多说了,网上百度一大堆。今天我就说说它的更为简单的使用,什么叫更为简单呢?按照一般的使用方法,我们首先建DTO,然后建每个对应的Profile,然后还要把每个Profile给Initialize,最后Global里AutoMapper.Configuration.Configure(),我个人觉得比较麻烦,如果一两个映射还好,多了的话就显得很麻烦了,下面来说说我个人觉得挺方便的一个方法。

1、第一步当然必须建立DTO,就不多说了。

2、Appstart里建一个MapperConfig类

 public static void Execute()
        {
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap<HospitalContact, HospitalContactDto>()
               .ForMember(dto => dto.IsPrimary, opt => opt.MapFrom(m => m.IsPrimary == 1 ? "" : ""))
               .ForMember(dto => dto.CreateTime, opt => opt.MapFrom(m => m.CreateTime.ToString("yyyy-MM-dd HH:mm:ss")));

                cfg.CreateMap<Department, DepartmentDto>()
             .ForMember(dto => dto.CreateTime, opt => opt.MapFrom(m => m.CreateTime.ToString("yyyy-MM-dd HH:mm:ss")));

          //........
//可以建立多个DTO映射
}); }

3、Global里MapperConfig.Execute()

4、最后就是如何使用了,很简单,看代码

    var dtolist = Mapper.Map<List<Dto>>(ModelList);
    var dto = Mapper.Map<Dto>(Model);


好了,结束了!

 

转载于:https://www.cnblogs.com/stubborn-donkey/p/7345723.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值