Automapper сопоставление типов объектов (копирование полей из одного объекта в другой) - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть следующее:

    public async Task<bool> Update(CoinEntity coinEntity)
    {

        var found = await context.Coins.FindAsync(coinEntity.CoinId);
        if(found==null)
        {
            throw new CoinNotFoundException(coinEntity.CoinId);
        }

        Mapper.Initialize(cfg => cfg.CreateMap<CoinEntity, CoinEntity>());
        found = Mapper.Map<CoinEntity>(coinEntity);
        await context.SaveChangesAsync();

        return true;


    }

Это работает в том смысле, что найденный имеет все свойства из переданного, однако, потому что .Map создает новый экземпляр, я полагаю.Это больше не отслеживается EFCore, и SaveChanges ничего не изменил.

Существует ли способ для автоматического обновления действительного объекта вместо создания нового экземпляра?

Я просто хочу, чтобы мой found объект все еще будет отслеживаться EF после того, как autopper выполнит его отображение.

Я пытаюсь избежать необходимости копировать поле за полем, и использование .Attach из EF не вариант, потому что он не работает, так как мне нужнозаменить записи дочерней таблицы (удалив некоторые, добавив некоторые)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...