正则表达式异常 [英] Regular expression exception

查看:112
本文介绍了正则表达式异常的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

模型类:

 [RegularExpression( @  ^(?= * [AZ])(?= * [az])(?= * [0-9])[A-Za-z0-9] {8,} $,ErrorMessage =   invalid)] 
[必需(ErrorMessage = 必需)]
[StringLength( 65 )]
[显示(名称= 密码)]
// [RegularExpression(@^(?=。* [az])(?=。* [AZ])(?=。* \ d)[a-zA-Z \d] {8,} $,ErrorMessage =密码包含无效字符)]
/ / [DataType(DataType.Password)]
public string 密码{获得; set ; }





登录操作方法:

  public  ActionResult登录(登录loginForm, string  returnUrl)
{
if (!ModelState.IsValid) return 查看( 登录);
var 密码= Md5Hash.Encrypt(loginForm.Password);

var user =( from users in _dbContextModel.user_login
where ((users.login_id == loginForm.Login_id)&&(users.password ==密码))
选择用户).FirstOrDefault();

if (user!= null
{
UserLogin userLogin = user;
userLogin.last_login = DateTime.Now;

// userLogin.password = user.password;

_dbContextModel.Entry(userLogin).State = EntityState.Modified;
_dbContextModel.SaveChanges();





当我使用上面的正则表达式时,我面临以下运行时异常的原因?请给我解决方案。我正在使用linq,E.F7和MVC5使用VS015和.net框架4.5



我的错误是:

验证失败一个或多个实体



我尝试了什么:



google google google google google google google google google google google google google google google google google

解决方案

,ErrorMessage = 无效)]
[必需(ErrorMessage = 必需)]
[StringLength( 65 )]
[显示(名称= 密码)]
// [RegularExpression(@^(?=。* [az])(?=。* [AZ])(?=。* \ d)[a-zA-Z \ n ] {8,}


,ErrorMessage =密码包含i无效字符)]
// [DataType(DataType.Password)]
public string password { get ; set ; }





登录操作方法:

  public  ActionResult登录(登录loginForm, string  returnUrl)
{
if (!ModelState.IsValid) return 查看( 登录);
var 密码= Md5Hash.Encrypt(loginForm.Password);

var user =( from users in _dbContextModel.user_login
where ((users.login_id == loginForm.Login_id)&&(users.password ==密码))
选择用户).FirstOrDefault();

if (user!= null
{
UserLogin userLogin = user;
userLogin.last_login = DateTime.Now;

// userLogin.password = user.password;

_dbContextModel.Entry(userLogin).State = EntityState.Modified;
_dbContextModel.SaveChanges();





当我使用上面的正则表达式时,我面临以下运行时异常的原因?请给我解决方案。我正在使用linq,E.F7和MVC5使用VS015和.net框架4.5



我的错误是:

验证失败一个或多个实体



我尝试了什么:



google google google google google google google google google google google google google google google google


充其量你的RegEx

 ^(?= * [ AZ])(?= * [AZ])(?= * [0-9])[A-ZA-Z0-9] {8,} 

Model class:

[RegularExpression(@"^(?=*[A-Z])(?=*[a-z])(?=*[0-9])[A-Za-z0-9]{8,}$", ErrorMessage = "invalid")]
       [Required(ErrorMessage = "Required")]
       [StringLength(65)]
       [Display(Name = "Password")]
      // [RegularExpression(@"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$", ErrorMessage = "Password contains invalid characters")]
       //[DataType(DataType.Password)]
       public string password { get; set; }



Login Action method:

public ActionResult Login(Login loginForm, string returnUrl)
       {
           if (!ModelState.IsValid) return View("Login");
           var Password = Md5Hash.Encrypt(loginForm.Password);

           var user = (from users in _dbContextModel.user_login
                       where ((users.login_id == loginForm.Login_id) && (users.password == Password))
                       select users).FirstOrDefault();

           if (user != null)
           {
               UserLogin userLogin = user;
               userLogin.last_login = DateTime.Now;

              // userLogin.password = user.password;

               _dbContextModel.Entry(userLogin).State = EntityState.Modified;
               _dbContextModel.SaveChanges();



When i am using above regular expression, i am facing the following run-time exception why? please give me solution. I am using linq, E.F7 and MVC5 using VS015 and .net framework 4.5

My ERROR IS:
Validation failed one or more entity

What I have tried:

google google google google google google google google google google google google google google google google google

解决方案

", ErrorMessage = "invalid")] [Required(ErrorMessage = "Required")] [StringLength(65)] [Display(Name = "Password")] // [RegularExpression(@"^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}


", ErrorMessage = "Password contains invalid characters")] //[DataType(DataType.Password)] public string password { get; set; }



Login Action method:

public ActionResult Login(Login loginForm, string returnUrl)
       {
           if (!ModelState.IsValid) return View("Login");
           var Password = Md5Hash.Encrypt(loginForm.Password);

           var user = (from users in _dbContextModel.user_login
                       where ((users.login_id == loginForm.Login_id) && (users.password == Password))
                       select users).FirstOrDefault();

           if (user != null)
           {
               UserLogin userLogin = user;
               userLogin.last_login = DateTime.Now;

              // userLogin.password = user.password;

               _dbContextModel.Entry(userLogin).State = EntityState.Modified;
               _dbContextModel.SaveChanges();



When i am using above regular expression, i am facing the following run-time exception why? please give me solution. I am using linq, E.F7 and MVC5 using VS015 and .net framework 4.5

My ERROR IS:
Validation failed one or more entity

What I have tried:

google google google google google google google google google google google google google google google google google


At best, your RegEx

^(?=*[A-Z])(?=*[a-z])(?=*[0-9])[A-Za-z0-9]{8,}


这篇关于正则表达式异常的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆