Ручной вызов проверки ModelState ⇐ C#
-
Anonymous
Ручной вызов проверки ModelState
Я использую сначала код ASP.NET MVC 3 и добавил в свои модели аннотации к данным проверки. Вот пример модели:
Продукт общедоступного класса { общественный ИНТ ProductId {получить; набор; } [Обязательно(ErrorMessage = «Пожалуйста, введите имя»)] общедоступная строка Имя {get; набор; } [Обязательно(ErrorMessage = «Пожалуйста, введите описание»)] [ТипДанных(ТипДанных.МногострочныйТекст)] общедоступная строка Описание {get; набор; } [Обязательно(ErrorMessage = «Укажите логотип»)] публичная строка Logo { get; набор; } } На моем веб-сайте у меня есть многоэтапный процесс создания нового продукта: на первом этапе вы вводите сведения о продукте, на втором этапе — другая информация и т. д. Между каждым шагом я сохраняю каждый объект (т. е. объект продукта) в сеансе. , чтобы пользователь мог вернуться к этому этапу процесса и изменить введенные данные.
На каждом экране у меня есть проверка на стороне клиента, работающая с новой проверкой jQuery.
Последний этап — это экран подтверждения, после которого продукт создается в базе данных. Однако, поскольку пользователь может переключаться между этапами, мне необходимо проверить объекты (Продукт и некоторые другие), чтобы убедиться, что они правильно заполнили данные.
Есть ли способ программно вызвать проверку ModelState для объекта, имеющего аннотации к данным? Я не хочу просматривать каждое свойство объекта и выполнять проверку вручную.
Я открыт для предложений о том, как улучшить этот процесс, чтобы упростить использование функций проверки модели ASP.NET MVC 3.
Я использую сначала код ASP.NET MVC 3 и добавил в свои модели аннотации к данным проверки. Вот пример модели:
Продукт общедоступного класса { общественный ИНТ ProductId {получить; набор; } [Обязательно(ErrorMessage = «Пожалуйста, введите имя»)] общедоступная строка Имя {get; набор; } [Обязательно(ErrorMessage = «Пожалуйста, введите описание»)] [ТипДанных(ТипДанных.МногострочныйТекст)] общедоступная строка Описание {get; набор; } [Обязательно(ErrorMessage = «Укажите логотип»)] публичная строка Logo { get; набор; } } На моем веб-сайте у меня есть многоэтапный процесс создания нового продукта: на первом этапе вы вводите сведения о продукте, на втором этапе — другая информация и т. д. Между каждым шагом я сохраняю каждый объект (т. е. объект продукта) в сеансе. , чтобы пользователь мог вернуться к этому этапу процесса и изменить введенные данные.
На каждом экране у меня есть проверка на стороне клиента, работающая с новой проверкой jQuery.
Последний этап — это экран подтверждения, после которого продукт создается в базе данных. Однако, поскольку пользователь может переключаться между этапами, мне необходимо проверить объекты (Продукт и некоторые другие), чтобы убедиться, что они правильно заполнили данные.
Есть ли способ программно вызвать проверку ModelState для объекта, имеющего аннотации к данным? Я не хочу просматривать каждое свойство объекта и выполнять проверку вручную.
Я открыт для предложений о том, как улучшить этот процесс, чтобы упростить использование функций проверки модели ASP.NET MVC 3.
Мобильная версия