AutoMapper Migrating from static API

asp.net, automapper, c#

Solution

Instead of:

Mapper.CreateMap<AbcEditViewModel, Abc>();

The new syntax is:

var config = new MapperConfiguration(cfg => {
  cfg.CreateMap<AbcEditViewModel, Abc>();
});

Then:

IMapper mapper = config.CreateMapper();
var source = new AbcEditViewModel();
var dest = mapper.Map<AbcEditViewModel, Abct>(source);

(Source with more examples)

Problem

https://github.com/AutoMapper/AutoMapper/wiki/Migrating-from-static-API this change breaks my system. Before update, I use: ===> Startup.cs ``` public class Startup { public Startup(IHostingEnvironment env) { ... MyAutoMapperConfiguration.Configure(); } } ``` ===> MyAutoMapperConfiguration.cs ``` public class MyAutoMapperConfiguration { public static void Configure() { Mapper.Initialize(a => { a.AddProfile<AbcMappingProfile>(); a.AddProfile<XyzMappingProfile>(); a.AddProfile<QweMappingProfile>(); }); } } ``` ===> AbcMappingProfile.cs ``` public class AbcMappingProfile : Profile { protected override void Configure() { Mapper.CreateMap<AbcEditViewModel, Abc>(); Mapper.CreateMap<Abc, AbcEditViewModel>(); ... } } ``` ERROR: 'Mapper.CreateMap()' is obsolete: 'The static API will be removed in version 5.0. Use a MapperConfiguration instance and store statically as needed. Use CreateMapper to create a mapper instanace.' I can use Mapper.Map. Now How can I use it

Original source