在我的ViewModels中,我使用幾個DataAnnotations來驗證表單數據,每個字段通常有2-3個註釋。第一次失敗後有什麼辦法停止DataAnnotation驗證?
例如,對於一個電子郵件地址字段可能是這樣的:
[Required(ErrorMessage = "Please enter an email address.")]
[Email(ErrorMessage = "That is not a valid email address.")] // Custom
public string Email { get; set; }
現在,如果有人提交表單,這兩個錯誤將在驗證摘要顯示出來。有沒有簡單的方法來指定一個命令來運行驗證註釋,以便如果Required驗證失敗,那麼電子郵件驗證不會運行?
如果這不可行,通常如何處理?我應該爲任何有多個註釋的字段創建自定義驗證器嗎?這將是一種正確的方式來使用註釋,其中一個人處理多種類型的驗證?
(我也知道我可以將Required註釋組合到自定義電子郵件中,但這僅僅是一個例子)。
感謝您的回答。我想你是對的,我可以改變驗證,以便它們一起正常工作,並且在不可能的情況下,將它們合併成一個。 – Brandon 2010-03-04 15:04:53