MVC 3 针对确认电子邮件地址字段的验证

16

使用MVC数据验证特性是否有一种方法可以在客户端验证我的模型中的两个字段是否相等。

我有两个字段:

    [Required(ErrorMessage = "*")]
    [Email(ErrorMessage = "*")]
    public string Email { get; set; }

    [Required(ErrorMessage = "*")]
    [Email(ErrorMessage = "*")]
    public string ConfirmEmail { get; set; }

我想设置一个属性,使得这两个字段相等,如果不相等就会产生验证错误。有没有办法实现这个功能?

谢谢。


创建一个新项目(包含默认的登录/注册功能),然后查看Registration model。它会比较密码。 - lahsrah
2个回答

36

是的,例如:

[Compare("Email", ErrorMessage = "The email and confirmation do not match.")]

希望能帮到你。


16

请查看CompareAttribute

[Compare("Email", ErrorMessage = "The email and confirmation email do not match.")]
public string ConfirmEmail { get; set; }

@Adam Tuliper - 实际上有趣的是,我比Russ稍微早回答了一点(最初相差2秒),然后他将我的答案添加到他的答案中(请注意相同的“ErrorMessage”),但最终我的答案被接受了。所以确实,它的工作方式很有趣! - Timbo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接