对于具有小写,大写和特殊字符的密码,ASP.NET MVC ModalState始终无效

时间:2016-09-04 19:15:03

标签: c# asp.net asp.net-mvc asp.net-mvc-4

我正在使用ASP.NET MVC应用程序,我创建了一个带有以下正则表达式注释的字段密码

    [Display(Description = "Password")]
    [DataType(DataType.Password)]
    [RegularExpression(@" /^(?=.*[A-Z])(?=.*[!@#$&_/\*])(?=.*[0-9])(?=.*[a-z].*[a-z].*[a-z]).{8,128}/", ErrorMessage = "The password can only consist of 1 Capital & three lower case letters, 1 Special Character , 1 number")]
    public string Password { get; set; }

现在我输入了密码

L@hore123

我的模态总是无效的。在我的模态中,我检查了尝试的值是

L@HORE123

剂量任何人都知道为什么mvc无效并转换为大写?任何修复都会有所帮助。

问候。

1 个答案:

答案 0 :(得分:0)

问题在于我的RegEx

代替

/^(?=.*[A-Z])(?=.*[!@#$&_/\*])(?=.*[0-9])(?=.*[a-z].*[a-z].*[a-z]).{8,128}/

使用

(?=.*[A-Z])(?=.*[!@#$&_/\*])(?=.*[0-9])(?=.*[a-z].*[a-z].*[a-z]).{8,128}

的工作。

希望这会帮助别人。