Проверка ВСЕГДА должна проводиться на клиенте, где это возможно, И на сервере (Модель в случае MVC.)
ScottGu имеет хорошую статью в блоге о проверке в MVC2. Имейте в виду, что у многих людей возникают проблемы с «автоматической» проверкой на стороне клиента на основе DataAnnotations. Предполагается, что вы сможете добавлять такие атрибуты, как [Обязательный], в свойства вашей Модели или ViewModel, а система MVC должна автоматически генерировать клиентские валидаторы для полей для этих свойств. На практике я не смог заставить эту работу.
Однако ручное добавление валидаторов jQuery работает. Если вы используете Ajax.BeginForm (), вы можете установить для параметра OnBegin AjaxOptions имя вашей функции проверки JavaScript.