Я занимаюсь разработкой приложения, в котором не обязательно использовать идентификатор ядра .NET для входа в систему. Однако всякий раз, когда я пытаюсь обновить запись, она выдает следующее исключение
Экземпляр типа сущности 'StApplications' не может быть отслежен, поскольку другой экземпляр с таким же значением ключа для {'ApplicationId'} уже существуетотслеживается. При подключении существующих объектов убедитесь, что подключен только один экземпляр объекта с данным значением ключа. Рассмотрите возможность использования DbContextOptionsBuilder.EnableSensitiveDataLogging, чтобы увидеть конфликтующие значения ключей.
Microsoft.EntityFrameworkCore.ChangeTracking.Internal.IdentityMap.ThrowIdentityConflict (запись InternalEntityEntry)
StApplications
- это таблица, в которой я хочу обновить запись
Ниже приведен код в моем ApplicationRepository
public async Task<StApplications> UpdateAsync(StApplications obj)
{
var updatedApplication = _context.Update(obj);
await _context.SaveChangesAsync();
return updatedApplication.Entity;
}
За ним следует код в моем ApplicationController
, метод POST
public async Task<IActionResult> Biodata(StApplications stApplications)
{
var application = await _ApplicationRepository.GetByIdAsync(stApplications.ApplicationId) ;
if (application == null)
{
return BadRequest(ModelState);
}
var updatedapplication = await _ApplicationRepository.UpdateAsync(stApplications);
return RedirectToAction("Olevel", new { id = updatedapplication.ApplicationId});
}