ASP.NET mvc 2 - 如何添加"确认您的电子邮件地址"字段?

Chr*_*ris 2 asp.net-mvc-2

假设我有一个看起来像这样的模型:

public class MyModel
{
    [DisplayName("Email:")]
    [Required(ErrorMessage = "Email is required")]
    [Email(ErrorMessage = "Email is invalid")]
    public string Email { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

在ASP.NET MVC 2中,我将渲染文本框和验证,如下所示:

<%=Html.LabelFor(x => x.Email)%>
<%=Html.TextBoxFor(x => x.Email)%>
<%=Html.ValidationMessageFor(x => x.Email)%>
Run Code Online (Sandbox Code Playgroud)

如何添加第二个字段以允许用户使用显示名称和模型属性验证来确认其电子邮件地址?

sto*_*oic 5

使用以下属性装饰您的类:

    [PropertiesMustMatch("Email", "ConfirmEmail", ErrorMessage = "The Email Address and confirmation Email Address do not match.")]
    public class MyModel
    {
        [DisplayName("Email:")]
        [Required(ErrorMessage = "Email is required")]
        [Email(ErrorMessage = "Email is invalid")]
        public string Email { get; set; }

        [DisplayName("Confrim Email:")]
        [Required(ErrorMessage = "Email is required")]
        [Email(ErrorMessage = "Email is invalid")]
        public string ConfirmEmail { get; set; }
    }
Run Code Online (Sandbox Code Playgroud)