gpt4 book ai didi

c# - MVC 3,用于用户注册过程的 View 模型。密码验证无法正常工作

转载 作者:太空狗 更新时间:2023-10-30 01:07:31 25 4
gpt4 key购买 nike

我正在尝试使用 MVC 3 创建一个用户注册页面,以便我可以更好地理解它的工作过程、幕后发生的事情等。我在尝试使用 时遇到了一些问题[比较] 检查用户是否输入了两次相同的密码。

我首先尝试将 ComparePassword 字段添加到我的用户模型中,但发现这不会按照我想要的方式工作,因为我在数据库中没有该字段,所以显而易见的答案是创建使用相同信息的 View 模型,包括 ComparePassword 字段。

所以我现在创建了一个 User 模型和一个 RegistrationViewModel,但是密码上的 [Compare] 似乎没有返回任何东西,例如无论我在两个框中放入什么,当我点击创建时它都没有给出错误,在我看来这意味着它已成功验证。

我不确定我在做什么或不做什么才能使这项工作正常进行。我尝试将 jQuery.Validate 更新到最新版本,因为旧版本中报告了一些错误,这对我的努力没有帮助。

下面是我正在使用的所有代码。

    public class RegistrationViewModel
{
[Required]
[StringLength(15, MinimumLength = 3)]
[Display(Name = "User Name")]
[RegularExpression(@"(\S)+", ErrorMessage = " White Space is not allowed in User Names")]
[ScaffoldColumn(false)]
public String Username { get; set; }

[Required]
[StringLength(15, MinimumLength = 3)]
[Display(Name = "First Name")]
public String firstName { get; set; }

[Required]
[StringLength(15, MinimumLength = 3)]
[Display(Name = "Last Name")]
public String lastName { get; set; }

[Required]
[Display(Name = "Email")]
public String email { get; set; }

[Required]
[Display(Name = "Password")]
[DataType(DataType.Password)]
public String password { get; set; }

[Required]
[DataType(DataType.Password)]
[Display(Name = "Re-enter Password")]
[Compare("Password", ErrorMessage = "Passwords do not match.")]
public String comparePassword { get; set; }
}

最佳答案

CompareAttribute 区分大小写吗?我在属性中看到您引用“密码”,但您的属性被声明为“密码”。

关于c# - MVC 3,用于用户注册过程的 View 模型。密码验证无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12162459/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com