給出一個驗證器類,看起來像這樣流利的驗證規則,子集和嵌套
public class SomeValidator : AbstractValidator<SomeObject>
{
public SomeValidator(){
RuleSet("First",
() => {
RuleFor(so => so.SomeMember).SetValidator(new SomeMemberValidator())
});
RuleSet("Second",
() => ... Code Does Not Matter ...);
RuleSet("Third",
() => ... Code Does Not Matter ...);
}
}
,另一個做內部構件驗證
public class SomeMemberValidator: AbstractValidator<SomeMember>
{
public SomeValidator(){
RuleSet("Fourth",
() => {
... Code Does Not Matter ...
});
}
}
的問題是,我想運行特定的規則集: 「第一」,「第二」和「第四」。我不想要「第三」運行。
鑑於Validate方法簽名只需要一個規則集參數,我沒有看到任何方式來做到這一點。有「*」,但我不想運行所有規則。
請幫忙。
我希望避免冒險進入源代碼,如果可能的話,但我們會看到。謝謝您的幫助。 – Alwyn 2012-03-09 22:27:44