2011-05-24 143 views

回答

2

ModelValidatorProviderCollection允許您控制您的應用程序將使用什麼樣的驗證提供程序。默認情況下,我認爲它使用DataAnnotationsModelValidatorProvider

你可以嘗試在應用程序啓動清理出的收集 - 我從來沒有嘗試過,但我想這將禁用驗證你。

protected void Application_Start() 
{ 
    // Other startup code... 

    ModelValidatorProviders.Providers.Clear(); 
} 
0

綁定模型僅驗證(客戶端)出來的[MVC3]框中的。當你腳手架的視圖,jquery.validate.min.jsjquery.validate.unobtrusive.min.js被添加到視圖,如果你留下「參考腳本庫」複選框打勾。這會產生一些客戶端端驗證。

如果刪除這些腳本引用,驗證未完成服務器端(在你的控制器),除非你訪問:

ModelState.IsValid 

你可以有[Required]屬性,自己的自定義ValidationAttribute註釋等,並該模型將不會被驗證。

+0

我已經嘗試過了,但不能確認。我的ValidationAttributes得到 驗證,無需調用ModelState.IsValid。 – dknaack 2011-05-24 13:38:12

+0

@dknaack:你不能確認什麼?你能展示一些模型代碼嗎? – 2011-05-24 13:50:25