Вопрос

Я полностью за использование ASP.NET MVC, но одна из областей, которая, я надеюсь, будет улучшена, - это проверка на стороне клиента.

Я знаю, что в самой последней версии (предварительный просмотр 5) есть много новых функций для проверки, но все они, похоже, появляются после публикации страницы.

Я видел интересную статью от Стив Сандерсон...используя Оперативную проверку, Castle.Компоненты.Validator.dll и фреймворк для проверки, который он создал.

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

Кто-нибудь из вас использовал подобный подход?

Знаете ли вы о чем-то подобном, добавленном в официальный релиз ASP.NET MVC?

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

Решение

"Очевидно, что вам все равно нужно будет проверять свои входные данные на стороне сервера для небольшого процента пользователей, которые отключают javascript".

Просто обновлю этот комментарий.Проверка на стороне сервера не имеет ничего общего с пользователями, которые работают с отключенным JavaScript.Вместо этого это необходимо по соображениям безопасности и для выполнения сложной проверки, которая не может быть выполнена на клиенте.Форма всегда должна иметь проверку на стороне сервера.Проверка на стороне клиента проводится только для удобства.

Злоумышленник может легко разместить данные в вашей форме, минуя любую проверку на стороне клиента, которая у вас есть. Никогда не доверяйте входным данным!

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

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

Посмотрите на Проверка jQuery плагин.Начать с базовой проверки очень просто - буквально одна строка JS плюс добавление имен классов к элементам управления вводом.Это также очень мощно.Вы можете расширяться, чтобы делать все, что захотите.

LiveValidation - это еще одна полезная библиотека javascript, которая может помочь в этом.Смотрите пример (с ASP.NET MVC) здесь:

http://blog.codeville.net/2008/09/08/thoughts-on-validation-in-aspnet-mvc-applications/

Похоже, что в этой области будет много улучшений в ASP.NET MVC 2

http://weblogs.asp.net/scottgu/archive/2009/07/31/asp-net-mvc-v2-preview-1-released.aspx

Взгляните на эта статья в блоге.В нем описывается, как автоматически генерировать правила проверки на стороне клиента с помощью xVal, а также как автоматически реализовывать удаленную проверку на стороне клиента.

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