Как вы делаете проверку в ASP.NET MVC RC? - PullRequest
3 голосов
/ 05 февраля 2009

Обеспечивает ли ASP.NET MVC стандартную функциональность валидатора, или вам приходится создавать свою собственную валидацию вручную? Если последнее, есть ли сторонний валидатор, который вы можете использовать в веб-приложениях ASP.NET MVC?

Ответы [ 5 ]

4 голосов
/ 05 февраля 2009

Вскоре после того, как я опубликовал этот ответ, я нашел xval , который является средой проверки для ASP.NET MVC.

3 голосов
/ 05 февраля 2009

ASP.NET MVC содержит такие методы, как Html.ValidationSummary() и Html.ValidationMessage(). Они обновляются автоматически, если вы используете TryUpdateModel. Вы также можете проверить вручную и установить сообщения об ошибках самостоятельно. Здесь - пример того, как его использовать.

1 голос
/ 10 февраля 2009

Вы также можете проверить .net рамки проверки . Это структура правил, которая позволяет создавать валидаторы, применять валидаторы к правилам, присоединять правила к вашей модели и проверять эти правила во время выполнения как на клиенте, так и на сервере. Он предоставляет гибкие способы настройки правил - интенсивное использование linq для быстрой и строго типизированной конфигурации. Он также предоставляет точки расширения для создания собственных генераторов и правил клиентских скриптов.

Фреймворк использует MVC RC HtmlHelpers и соглашения по умолчанию.

Если вы загрузите последний источник, вы увидите пример работы фреймворка в проекте быстрого запуска SplitBranch -> QSAspMvc. Он все еще активно развивается.

1 голос
/ 05 февраля 2009

Я реализовал вариант кода, который нашел в блоге Стивена Вальтера . Я использую его с моделями LINQ2SQL, определяя интерфейс IValidatedEntity, который включает метод GetRuleViolations (), и реализуя частичный метод OnValidate, который вызывает GetRuleViolations () и вызывает пользовательское исключение, если число нарушений не равно нулю. В контроллере это вызывает SubmitChanges для контекста данных. Если я получаю исключение, я запрашиваю модель с помощью метода GetRuleViolations (), чтобы создать ошибки модели для передачи обратно в представление.

1 голос
/ 05 февраля 2009

Дэвид Хейден написал статью на www.codebetter.com, описывающую отличный способ справиться с проверкой. Конечно, xVal - это вариант, но всегда приятно иметь понимание.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...