Не можете следить за документацией AutoMapper - где находится CreateMapper?
Я столкнулся с проблемой при обновлении со статического API AutoMapper.
Я следую примеру на этой странице, где говорится, что
Типичное использование от 4.1 и до было:
Mapper.Initialize(cfg => { cfg.AddProfile<AppProfile>(); cfg.CreateMap<Source, Dest>(); }); var dest = Mapper.Map<Source, Dest>(new Source());
В 4.2 и позже это будет выглядеть так:
var config = new MapperConfiguration(cfg => { cfg.AddProfile<AppProfile>(); cfg.CreateMap<Source, Dest>(); }); var mapper = config.CreateMapper(); var dest = mapper.Map<Source, Dest>(new Source());
Однако, используя v4.2.1 через NuGet, я не вижу этот метод CreateMapper.
Что я должен использовать?
1 ответ
Решение
Я понял, что стало причиной моей проблемы.
Для того, чтобы использовать MapperConfiguration
В приложении я сохранял его как статическое свойство:
public static IMapperConfiguration { get; private set; }
public static void Init()
{
MapperConfiguration = new MapperConfiguration(...);
...
MapperConfiguration. // CreateMapper() not available
}
Проблема здесь в том, что CreateMapper
метод доступен только на MapperConfiguration
класс, а не IMapperConfiguration
интерфейс