Установка пароля / подтверждение пароля без [Сравнить]

Я использую Asp.net MVC для создания пароля и подтверждения поля пароля. В настоящее время я использую атрибут remote, чтобы проверить, совпадают ли пароль и пароль подтверждения, однако remote будет вызывать функцию только в случае изменения поля, к которому он применяется.

Я просмотрел предыдущие посты, относящиеся к прошлому году, и обнаружил, что наиболее распространенным предложением является атрибут сравнения, однако теперь он устарел.

Я предполагаю, что есть готовое решение для этой проблемы.

Это из модели

    [Remote(UserController.ActionNameConstants.PasswordMatch,
       UserController.NameConst, AdditionalFields = "ConfirmPassword", 
       ErrorMessage = "The passwords do not match")]
    [MinLength(8, ErrorMessage="Minimum password length is 8")]
    [DisplayName("Password"), RequiredIf("Id == 0", 
      ErrorMessage="Password is required")]
    public string Password { get; set; }


    [DisplayName("Confirm Password"), RequiredIf("Id == 0", 
        ErrorMessage = "Confirm password is required")]
    public string ConfirmPassword { get; set; }

Это в контроллере

    [HttpGet]
    public virtual JsonResult PasswordMatch(string password,string confirmPassword)
     {
       return this.Json(password == 
       confirmPassword,JsonRequestBehavior.AllowGet);
      }

1 ответ

Сравнение не является сложным, вы все равно можете использовать [Compare("Имя свойства для сравнения с")]... оно находится в пространстве имен "System.ComponentModel.DataAnnotations".

Другие вопросы по тегам