ModelBinder не устанавливает правильные исходные значения
Примечание решено, это было отредактировано Больше информации, проверьте изменения
При выполнении поста обратно с моделью сущностей в MVC. Связыватель модели пренебрегает связыванием исходных значений. Таким образом, если кто-либо использует производную сохранения изменений в журнале аудита (будь то переопределение или привязка к событиям), существует высокая вероятность того, что он не будет регистрировать изменения правильно, чтобы исправить это, вы можете решить проблему с помощью этой функции, которая клонирует текущие значения, перезагружает объект, а затем сбрасывает текущие значения.
void SetCorrectOriginalValues(DbEntityEntry Modified)
{
var values = Modified.CurrentValues.Clone();
Modified.Reload();
Modified.CurrentValues.SetValues(values);
Modified.State = EntityState.Modified;
}
Вы можете получить доступ к DbEntityEntry через трекер изменений или функцию входа из вашего контекста. Если есть какие-либо улучшения или вещи, которые я пропускаю, дайте мне знать, чтобы я мог их исправить.