2012-01-02 19 views
12

Powiel możliwe:
Password validation (regex?)Hasło DataAnnotation w ASP.NET MVC 3

Pracuję nad aplikacji ASP.NET MVC 3 i mam stosowane

[Required] 
    [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] 
    [DataType(DataType.Password)] 
    [Display(Name = "Password")] 
    public string Password { get; set; } 

DataAnnotation do mojego pola Hasło. Chcę się upewnić, że hasło musi mieć co najmniej 6 znaków, nie więcej niż 18 znaków i musi zawierać co najmniej jedną wielką literę, jedną małą literę i jedną cyfrę. Czy muszę dodać wyrażenie regularne lub DataType.password spowoduje to wszystko?

Proszę zasugerować

+2

W jaki sposób jest to powiązane z strukturą podmiotu? –

+1

Nie związane z Entity Framework – IamStalker

Odpowiedz

24

Musisz napisać dokładnie to, co chcesz. Należy napisać:

[Required] 
[StringLength(18, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] 
[RegularExpression(@"^((?=.*[a-z])(?=.*[A-Z])(?=.*\d)).+$)"] 
[DataType(DataType.Password)] 
[Display(Name = "Password")] 
public string Password { get; set; } 
+0

Próbowałem go, ale pobieranie: parsowanie "^ (? =. * [Az]) (? =. * [AZ]) (? =. * \ D)). + $" - Zbyt wiele). –

+1

Przykro mi, że tęsknię "(" spróbuj tego: "^ ((? =. * [Az]) (? =. * [AZ]) (? =. * \ D)). + $" – Hadas

+2

@Hadas zamiast komentarzy proszę zaktualizować oryginalną odpowiedź –

Powiązane problemy