軟體環境 vs2015 asp.net mvc 5 .NET Framework 4.5.2 AutoMapper 5.2.0.0 AutoMapper安裝 新建asp.net mvc 項目 AutoMapperExample,此處應該都會用vs新建mvc項目了,不再講解如何創建 , 點擊 工具→N ...
軟體環境
- 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的配置全部配置完成