2012-01-02 3 views
12

Можно создать дубликат:
Password validation (regex?)Пароль DataAnnotation в ASP.NET MVC 3

Я работаю на приложение ASP.NET MVC 3 и я применил

[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 в поле «Пароль». Я хочу убедиться, что пароль должен быть не менее 6 символов, не более 18 символов, и должен содержать по крайней мере одно письмо в верхнем регистре, одну строчную букву и одну цифровую цифру. Нужно ли добавлять регулярное выражение или DataType.password будет делать все это?

Просьба предложить

+2

Как это связано с инфраструктурой сущности? –

+1

Не имеет отношения к Entity Framework – IamStalker

ответ

24

Вы должны написать именно то, что хотите. Напиши это:

[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

Я пробовал, но получаю: разбор «^ (? =. * [Az]) (? =. * [AZ]) (? =. * \ D)). + $" - Слишком много) 's. –

+1

Прошу прощения, что я пропустил («Попробуйте это:»^((? =. * [Az]) (? =. * [AZ]) (? =. * \ D)). + $ " – Hadas

+2

@Hadas вместо комментариев, пожалуйста, обновите свой первоначальный ответ –

Смежные вопросы