IValitRules<TObject> IValitRules<TObject>.EnsureFor<TProperty>(Expression<Func<TObject, IEnumerable<TProperty>>> selector, IValitator<TProperty> valitator) { selector.ThrowIfNull(); valitator.ThrowIfNull(); var collectionValitRule = new NestedObjectCollectionValitRule<TObject, TProperty>(selector, valitator, _strategy); _rules.Add(collectionValitRule); return this; }
IValitRules <TObject> IValitRules <TObject> .EnsureFor <TProperty>(Func <TObject, IEnumerable <TProperty> > selector, IValitRulesProvider <TProperty> valitRulesProvider) { selector.ThrowIfNull(); valitRulesProvider.ThrowIfNull(); var collectionValitRule = new NestedObjectCollectionValitRule <TObject, TProperty>(selector, valitRulesProvider, _strategy); _rules.Add(collectionValitRule); return(this); }