2012-08-13 181 views
1

我有一個父類和一個子類,父類有1個成員,他的類型是子類。這兩個類都繼承了IValidatableObject並驗證了它們自己的屬性,因爲我希望子類是可重用的。Asp.net MVC 3條件模型驗證

public class Parent : IValidateable 
{ 
    Public ChildClass Child {get; set;} 
    Public bool ValidateChild {get; set;} 

    public IEnumerable<ValidationResult> Validate(ValidationContext validationContext) 
    { 
    } 
} 

public class Child : IValidatable 
{ 
    Public string Name {get; set;} 

    public IEnumerable<ValidationResult> Validate(ValidationContext validationContext) 
    { 
     //This shouldn't fire if parent.ValidateChild is false 
    } 
} 

的問題是,如果ValiddateChild屬性爲true

如何避免驗證時ValidateChild是假的子對象的父類的子類的屬性應該只驗證?

+0

您是否正在做任何事情讓父母對孩子進行驗證? – 2014-07-23 21:27:18

回答

-1

一種方法是自定義驗證,或者您可以檢查一些外部框架,如this,看看是否有幫助。