[英]Multiple custom validation attribute on single property
我正在從事MVC 4項目。 我在單個屬性上有多個自定義驗證屬性的問題。 假設我有3個針對單個屬性的自定義驗證屬性,例如:
public class Test
{
[customAttribute1]
[customAttribute2]
[customAttribute3]
public string property1 { get; set; }
}
當前,當我發布他的表單時,將對屬性執行所有三個自定義驗證(無論第一次驗證是通過還是失敗)。
我想要的是,如果customAttribute1
驗證失敗,那么無需使用下一個下一個自定義屬性來驗證該屬性。 我怎樣才能做到這一點?
此行為的重點是將模型中的所有錯誤返回(返回給UI),以便用戶可以同時修復所有錯誤...
假設您希望密碼最少8個字符,並且至少有一個大寫字母和一個數字。 您希望驗證運行的方式是,如果密碼不夠長則停止而不檢查其余密碼。 典型的用例場景:
User sets password "foo" -> submit
error - Password too short
User sets it to "foofoofoo"
error - Password must have an uppercase
User sets it to "FooFooFoo"
error - Password must have a number
User goes away frustrated...
因此,如果要一起驗證這3個屬性,我的建議是保留這種行為。 如果3是排他性的,則按照其他建議進行操作,並將它們組合為單個屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.