设置密码/确认密码没有[比较]
本文关键字:密码 比较 确认 设置 | 更新日期: 2023-09-27 18:16:52
我使用Asp.net MVC创建密码和确认密码字段。我目前正在使用远程属性来检查密码和确认密码是否相同,但是远程只会在应用于更改的框中调用函数。
我回顾了去年以前的文章,发现最常见的建议是使用compare属性,但是现在已经弃用了。
我认为有一个预先构建的解决方案来解决这个问题。
这是来自模型
[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);
}
Compare是不可逆的,你仍然可以使用[Compare("Property name to Compare with")]…它在System.ComponentModel中。DataAnnotations"名称空间。