Я обновляю регистр базы данных, но перед обновлением я извлек тот же регистр.
Из-за этого я получаю следующую ошибку:
Экземпляр типа сущности 'Позиция' не может быть отслежен, потому что другой экземпляр с тем же значением ключа для {'Id'} уже отслеживается. При подключении существующих объектов убедитесь, что подключен только один экземпляр объекта с данным значением ключа. Подумайте об использовании DbContextOptionsBuilder.EnableSensitiveDataLogging для просмотра конфликтующих значений ключа.
Это код:
[FunctionName(nameof(PostUpdatePosition))]
public ActionResult PostUpdatePosition([HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "postUpdatePosition")]HttpRequestMessage request)
{
PositionViewModel viewModel;
try
{
// Received json
viewModel = JsonConvert.DeserializeObject(request
.Content
.ReadAsStringAsync()
.Result);
var clientId = <i>positonRepository.GetById</i>(<b>viewModel.Id</b>).ClientId;
// here the error appears. ▼
<i>positonRepository.Update</i>(new Domain.Entities.Position
{
Id = <b>viewModel.Id</b>,
Description = viewModel.Description,
Active = viewModel.Active,
ClientId = clientId
});
positonRepository.SaveChanges();
}
catch (Exception ex)
{
return StatusCode(StatusCodes.Status500InternalServerError,
new EasyEpiJson()
.GetInternalServerError(ex));
}
return Ok(new EasyEpiJson().GetOK(viewModel));
}
}
Как это исправить?