Como posso ter um ValidationAttribute personalizado processado como um atributo 'data-val-xx' no lado do cliente?

Dado um ViewModel que se parece com isso:

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

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

E uma View como esta (sintaxe do Razor aqui):

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

Estou recebendo a seguinte marcação:

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

No entanto, gostaria que também incluísse um atributo 'data-' para o meupersonalizadas validador.

Eu quero algo como isto:

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

Como posso conseguir isso com o ASP.NET MVC 3.0?

Por exemplo. Preciso colocar algum atributo especial no meu validador personalizado? Ou registrá-lo em algum lugar?

questionAnswers(1)

yourAnswerToTheQuestion