У меня есть следующее:
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 не вариант, потому что он не работает, так как мне нужнозаменить записи дочерней таблицы (удалив некоторые, добавив некоторые)