ModelBinder не устанавливает правильные исходные значения

Примечание решено, это было отредактировано Больше информации, проверьте изменения

При выполнении поста обратно с моделью сущностей в MVC. Связыватель модели пренебрегает связыванием исходных значений. Таким образом, если кто-либо использует производную сохранения изменений в журнале аудита (будь то переопределение или привязка к событиям), существует высокая вероятность того, что он не будет регистрировать изменения правильно, чтобы исправить это, вы можете решить проблему с помощью этой функции, которая клонирует текущие значения, перезагружает объект, а затем сбрасывает текущие значения.

    void SetCorrectOriginalValues(DbEntityEntry Modified)
    {
        var values = Modified.CurrentValues.Clone();
        Modified.Reload();
        Modified.CurrentValues.SetValues(values);
        Modified.State = EntityState.Modified;
    }

Вы можете получить доступ к DbEntityEntry через трекер изменений или функцию входа из вашего контекста. Если есть какие-либо улучшения или вещи, которые я пропускаю, дайте мне знать, чтобы я мог их исправить.

0 ответов

Другие вопросы по тегам