Установка пароля / подтверждение пароля без [Сравнить]
Я использую 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".