C# 使用FluentValidation验证集合

C# 使用FluentValidation验证集合,c#,fluentvalidation,C#,Fluentvalidation,我正在尝试这样做: RuleFor(client => client.PriceCustomization.GroupBy(a=>a.ProductId).Select(a => a.ToList())) .SetCollectionValidator(new PriceCustomizationsForProductValidator()); 但我收到了以下错误:Failed:System.InvalidOperationException:嵌套验证器只能与成员表达式

我正在尝试这样做:

RuleFor(client => client.PriceCustomization.GroupBy(a=>a.ProductId).Select(a => a.ToList()))
   .SetCollectionValidator(new PriceCustomizationsForProductValidator());
但我收到了以下错误:Failed:System.InvalidOperationException:嵌套验证器只能与成员表达式一起使用

“PriceCustomizationsForProductValidator”是“PriceCustomization”列表的验证器


有人知道我该如何解决这个问题吗?

如果
PriceCustomizationsForProductValidator
是列表类型的验证器,那么您不需要调用
.SetCollectionValidator
。相反,您应该能够使用
FluentValidation
版本8调用
.SetValidator

,请尝试以下操作:

RuleForEach(client => client.PriceCustomization)
   .SetValidator(new PriceCustomizationsForProductValidator());