С MVC3 у вас есть два новых механизма для добавления пользовательской проверки. Это (1) атрибут подкласса ValidationAttribute или (2) реализация IValidatableObject.
ValidationAttribute позволяет относительно просто добавить проверку на стороне клиента путем реализации IClientValidatable (и регистрации нового адаптера и метода через jQuery).
IValidatableObject больше подходит для одноразовых требований проверки, где повторное использование не вариант. Это также приводит к немного более простому коду. Поэтому это был бы мой выбор для ряда сценариев. К сожалению, я не вижу простого способа реализовать проверку на стороне клиента с помощью этого метода.
Итак, вопрос в том, что мне не хватает и как вы получаете JS-проверку при использовании IValidatableObject?