2010-09-13 94 views
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; } 
} 

在ASP.NET MVC 2,我想呈現的文本框和驗證,像這樣:

<%=Html.LabelFor(x => x.Email)%> 
<%=Html.TextBoxFor(x => x.Email)%> 
<%=Html.ValidationMessageFor(x => x.Email)%> 

如何添加第二個字段允許用戶使用顯示名稱和模型屬性中的驗證確認他們的電子郵件地址?

回答

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; } 
    } 
+0

而且,這是否驗證消息在視圖中顯示?我沒有在頁面的任何地方使用Html.ValidationSummary ... – Chris 2010-09-13 20:02:35

+0

看看:ModelState.AddModelError,那裏你可以添加錯誤消息,我相信它會看起來像這樣:ModelState.AddModelError(「ConfirmEmail」,「不匹配」); – 2010-09-13 20:33:30

相關問題