AutoMapper Profile用法

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using AutoMapper;

namespace MvcAutoMapper.AutoMapper
{
    public class Configuration
    {
        public static void Configure()
        {
            Mapper.Initialize(cfg =>
            {
                cfg.AddProfile<UserProfile>();
            });
        }
    }
}

  

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using AutoMapper;

namespace MvcAutoMapper.AutoMapper.Profiles
{
    public class UserProfile:Profile
    {

        protected override void Configure()
        {
            CreateMap<Models.User, Models.UserDto>();

        }
    }
}

  

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using AutoMapper;

namespace MyMvc.AutoMapper
{
    public static class AutoMapperForMvc
    {
        public static void Register()
        {
            Mapper.Initialize(x =>
            {
                x.AddProfile<UserProfile>();
            });

            //在程序启动时对所有的配置进行严格验证
            Mapper.AssertConfigurationIsValid();
        }
    }
}

  

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using AutoMapper;

namespace MyMvc.AutoMapper
{
    public class UserProfile:Profile
    {
        public UserProfile()
        {
            base.CreateMap<Models.User, Models.UserView>()
                //映射前
                .BeforeMap((s, t) =>
                {
                    s.Age += 10;
                })
                //映射后
                .AfterMap((s, t) =>
                {
                    t.Age += 10;
                })
                //条件判断 
                //年龄不大于10 不映射年龄这个属性的值,那值就是默认的0,但是映射后+10,所以就是10
                .ForMember(t=>t.Age,o=>o.Condition(s=>s.Age>30))
                //空值
                .ForMember(t=>t.Name, o=>o.NullSubstitute("无名氏")) 
                .ForMember(x=>x.time,x=>x.MapFrom(s=>s.add_time))
                //反向映射
                .ReverseMap(); 
        }
    }
}

  

转载于:https://www.cnblogs.com/Jeely/p/11004292.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值