1.实体注册
1 public static class MapperConfig 2 { 3 public static MapperConfiguration MapperConfiguration() 4 { 5 return new MapperConfiguration(_ => 6 { 7 _.AddProfile(new UserInfoProfile()); 8 // _.AddProfile(new ChartProfile()); 9 //也可以 CreateMap<UserInfo, UserInfoListDTO>(); 10 }); 11 } 12 } 13 14 public class UserInfoProfile : Profile 15 { 16 protected override void Configure() 17 { 18 CreateMap<UserInfo, UserInfoListDTO>(); 19 20 // CreateMap<decimal, string>().ConvertUsing(value => value.ToString("c")); 21 } 22 }
Global.asax.cs
1 public class MvcApplication : System.Web.HttpApplication 2 { 3 internal static MapperConfiguration MapperConfiguration { get; private set; } 4 5 protected void Application_Start() 6 { 7 MapperConfiguration = MapperConfig.MapperConfiguration(); 8 ... 9 } 10 }
BaseController.cs
1 public class BaseController : Controller 2 { 3 // 4 // GET: /Base/ 5 private IMapper _mapper = null; 6 protected IMapper Mapper 7 { 8 get 9 { 10 if (_mapper == null) _mapper = MvcApplication.MapperConfiguration.CreateMapper(); 11 return _mapper; 12 } 13 } 14 }
AutoMapper源码地址:https://github.com/AutoMapper/AutoMapper