Копировать объект в объект (с помощью Automapper?)

62
задан Boann 1 November 2014 в 00:13
поделиться

1 ответ

В текущей версии AutoMapper Вы не можете использовать помехи AutoMapper.Mapper.Map метод. Вместо этого инициализируйте новый картопостроитель как это:

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

var mapper = new Mapper(config);

var clone = mapper.Map<Person>(person);

Обычно, Вы хотите зарегистрировать картопостроитель в Startup.cs файл для внедрения зависимости и ввести его в Вашем бизнес-классе:

public void ConfigureServices(IServiceCollection services)
{
    var config = new MapperConfiguration(cfg =>
    {
        cfg.CreateMap<Person, Person>();
    });

    var mapper = new Mapper(config);

    services.AddSingleton(mapper);

    // ...
}

Важный: не создают или вводят картопостроитель в Вашем классе объекта!

, Конечно, необходимо предпочесть использовать MemberwiseClone() в простых случаях.

0
ответ дан 24 November 2019 в 16:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: