공식사이트
https://github.com/AutoMapper/AutoMapper
사용법은 현재 2017.11.23 기준, 아직도 6.1.1 버전 이하 가이드로 설명이 되어 있네요.
AutoMapper 가 6.1.1 까지는 아래와 같은 구문이 적용이 가능 했습니다.
Mapper.Initialize(cfg => cfg.CreateMap<ContactModel, ContactModel>()
.ConstructUsing(x => new ContactModel(LoggingDelegate))
.ForMember(x => x.EntityReference, opt => opt.Ignore())
);
var model = Mapper.Map<ContactModel>(newModel);
하지만 6.2.0 이상 부터는 오류가 발생합니다.
System.InvalidOperationException: 'Mapper already initialized. You must call Initialize once per application domain/process.'
이를 개선하기 위해서는 MapperConfiguration 함수를 통해 AutoMapper 를 초기화 하고 나서 사용해야 합니다.
var mapper = new MapperConfiguration(cfg => cfg.CreateMap<ContactModel, ContactModel>()
.ConstructUsing(x => new ContactModel(LoggingDelegate))
.ForMember(x => x.EntityReference, opt => opt.Ignore())).CreateMapper();
var model = mapper.Map<ContactModel>(newModel);
자세한 내용은 여기서...
https://stackoverflow.com/a/47265707