AutoMapper的介绍与使用
Posted 艳阳雪
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AutoMapper的介绍与使用相关的知识,希望对你有一定的参考价值。
软件环境
- vs2015
- asp.net mvc 5
- .NET Framework 4.5.2
- AutoMapper 5.2.0.0
AutoMapper安装
新建asp.net mvc 项目 AutoMapperExample,此处应该都会用vs新建mvc项目了,不再讲解如何创建
,
点击 工具→NuGetB包管理器→管理解决方案的NuGet程序包,在弹出的界面中,选中 “浏览”,输入autoMapper,回车搜索,在搜索出的程序包中,选中第一个,然后安装
输出如下图所示,则表示安装AutoMapper成功
AutoMapper配置
使用静态全局mapper注册的话,应该放在应用程序启动的时候,即ASP.NET MVC的Global.asax文件的Application_Start()方法。
在程序中新建AutoMapper文件夹,用于存放对象映射的类,该文件夹下新建类AutoMapperConfig,该类处理所有的对象映射
该类主要处理对象的映射,即从一个对象转化到另一个对象
public class AutoMapperConfig { public static void Config() { Mapper.Initialize(cfg => { cfg.CreateMap<OrderDto, Order>(); cfg.AddProfile<ExtendMapProfile>(); }); } public class ExtendMapProfile : Profile { protected override void Configure() { CreateMap<UserDto, User>(); } } }
其中Order,OrderDto,User,UserDto为实体对象,此处不再细述,CreateMap<>为AutoMapper转化其中两个对象,此处后续会做详细描述,再增加新的对象转换时,均在此处进行CreateMag<source,dest>转换
在Global.asax文件的Application_Start()方法中执行该静态方法
protected void Application_Start() { AutoMapperConfig.Config(); AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); }
至此,所有AutoMapper的配置全部配置完成
以上是关于AutoMapper的介绍与使用的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET Core Automapper的Nuget安装和配置以及demo示例代码