Uzyskaj atrybuty adnotacji danych z modelu

Chcę utworzyć niestandardowy walidator po stronie klienta, ale chcę zdefiniować reguły sprawdzania poprawności za pomocą atrybutów adnotacji danych w warstwie logiki biznesowej. Jak uzyskać dostęp do atrybutów sprawdzania poprawności modelu w czasie wykonywania?

Chcę napisać „generator”, który przekształci ten kod:

public class LoginModel
{
    [Required]
    [MinLength(3)]
    public string UserName { get; set; }

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

do tego:

var loginViewModel= {
    UserName: ko.observable().extend({ minLength: 3, required: true }),
    Password: ko.observable().extend({ required: true })
};

Ale oczywiście nie ze źródeł .cs. =)

Może refleksja?

UPD

Znalazłem tę metodę:MSDN. Ale nie rozumiem, jak go używać.

questionAnswers(2)

yourAnswerToTheQuestion