ASP.NET MVC вставка значений формы в ViewModel

StackOverflow https://stackoverflow.com/questions/893455

  •  23-08-2019
  •  | 
  •  

Вопрос

Я пытаюсь выяснить, есть ли в ASP.NET MVC встроенный способ назначения значений формы, которые отправляются POST, обратно свойствам ViewModel, которые изначально были отправлены в представление?

Итак, я обдумываю идею украшения некоторых свойств ViewModel атрибутом, а затем анализа ViewModel и использования этого имени для извлечения значений (и приведения) из объекта Form[].

Однако я предполагаю, что что-то подобное уже встроено, и поэтому не хочу здесь изобретать велосипед.

Проблема, которую я пытаюсь решить, заключается в том, что пользователь нажимает кнопку в форме, а сервер проверяет данные, и если есть ошибки, мы возвращаем пользователя в форму, используя ту же модель представления для переноса данных и тем самым заполнения значения обратно в форму, которую первоначально ввел пользователь.

(Да, я также выполняю проверку на стороне клиента с помощью JavaScript, чтобы упростить задачу, но в целях безопасности мне приходится повторять проверку на сервере.)

Идеи?

Это было полезно?

Решение

Вы можете использовать Обновитьмодель или Попробуйтеобновитьмодель в вашем контроллере.

Я рекомендую использовать одну из перегрузок, в которой вы указываете обновляемые поля.

Подробно это описано на странице 78 Wrox Professional ASP.net электронная книга (или глава!)

Другие советы

Я не думаю, что в MVC есть что-то подобное, или, по крайней мере, я ничего не видел.Хотя было бы неплохо, как это делают многие другие MVC-фреймворки (например, стойки).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top