Как DataAnnotations действительно работают в MVC?

Это скорее теоретический вопрос.

В настоящее время я изучаю валидацию MVC 3 с помощью ComponentModel.DataAnnotations, и все работает автоматически, особенно на стороне клиента.

Каким-то образом что-то проверяет наличие эти атрибуты и генерирует javascript для проверки (или атрибуты html5, если используется ненавязчивый режим), и он работает.

У меня вопрос, что генерирует JavaScript на стороне клиента и как я могу получить к нему доступ и изменить? Например, я хочу обрабатывать указанные атрибуты аннотации данных немного по-другому или обрабатывать настраиваемые атрибуты (я обнаружил, что могу получить их из ValidationAttribute, но, возможно, по какой-то причине я не хочу).

Может кто-нибудь объяснить мне, что происходит на самом деле? (Или ссылки на хорошие объяснения тоже были бы хороши, так как я нашел только учебные пособия по фактическому использованию аннотаций данных)

РЕДАКТИРОВАТЬ: Также при наследовании от ValidationAttribute проверка на стороне клиента не работает автоматически. Почему?

13
задан SoonDead 1 March 2011 в 12:21
поделиться