Как я могу создать собственный атрибут ValidationAttribute в качестве атрибута 'data-val-xx' на стороне клиента?

Учитывая ViewModel, который выглядит так:

public class Login {
    [Required]
    public string Username { get; set; }

    [Required, CustomValidator]
    public string Password { get; set; }
}

И View, подобный этому (здесь синтаксис Razor):

@Html.TextBoxFor(f => f.Password)

Я получаю следующую разметку:

<input type="text"
       value="" 
       data-val-required="This field is required." />

Однако я бы хотел, чтобы также добавьте атрибут data- для моего настраиваемого валидатора.

Мне нужно что-то вроде этого:

<input type="text" 
       value="" 
       data-val-required="This field is required."
       data-val-customvalidator="XYZ" />

Как я могу добиться этого с помощью ASP.NET MVC 3.0?

Например, нужно ли мне поставить какой-нибудь специальный атрибут на свой валидатор? Или где-нибудь зарегистрировать?

7
задан Jonathan 8 November 2010 в 02:01
поделиться