2011-01-28 98 views
1

有沒有辦法在MVC3模型上使用條件驗證?MVC3 DataAnnotaions驗證

例如

public class User 
{ 
    [Required] 
    public string Password { get; set; } 
    [Required, Compare("Password")] 
    public string ComparePassword { get; set; } 
} 

情況我想去的密碼和confirmpassword字段需要添加新用戶,只有當。但是,編輯時,我想這些是空的(視圖中的文本框)。只有當用戶輸入新密碼並確認密碼時,密碼纔會在數據庫中更改。

感謝

回答

2

通常,您將有獨立的AddUserViewModel和EditUserViewModel類與相應的字段和驗證。然後,在您的控制器操作中,如果模型有效,您將視圖模型轉換爲您的用戶實體,並將其傳遞到您的業務邏輯/服務以保存。你可以使用Automapper

+0

謝謝。這就說得通了 – ShaneKm 2011-01-28 10:05:45