0
我在使用Enterpirse庫驗證驗證具有嵌套對象的對象時應用規則集時遇到問題。如果我有以下對象嵌套對象的企業庫驗證規則集問題
public class Person
{
[ObjectValidator]
[ObjectValidator(Ruleset = "A")]
public Address Address { get; set; }
}
public class Address
{
[StringLengthValidator(0, 32, MessageTemplate = "Invalid value '{0}' for {1}, Max length:{5}")]
public string Address1 { get; set; }
[StringLengthValidator(0, 32, MessageTemplate = "Invalid value '{0}' for {1}, Max length:{5}", Ruleset = "A")]
public string Address2 { get; set; }
}
現在,如果我嘗試致電
ValidationResults results = Validation.Validate(myPersonObject);
我得到我的默認驗證預期,即驗證對象,如果Person.Address.Address1太長它觸發但Person.Address.Address2被忽略,這是預期的。
但是,如果我嘗試調用我的驗證規則集爲「A」如下
ValidationResults results = Validation.Validate(myPersonObject, "A");
我總是得到相同的結果與前一次調用validate儘管我已指定規則集的事實。 有什麼建議嗎?