Given a representative class as follows
If I validate as follows
How do I get it to output as "Bars[0].Values[0]"?
public class Foo
{
public IEnumerable<Bar> Bars { get; set; }
}
public class Bar
{
public IEnumerable<string> Values { get; set; }
}
If I validate as followspublic class FooValidator : AbstractValidator<Foo>
{
public FooValidator()
{
RuleFor(x => x.Bars).SetCollectionValidator(new BarValidator());
}
private class BarValidator : AbstractValidator<Bar>
{
public BarValidator()
{
RuleForEach(x => x.Values).NotEmpty();
}
}
}
The field is output as "Bars[0].Bars[0].Values[0]"If I validate as follows
public class FooValidator : AbstractValidator<Foo>
{
public FooValidator()
{
RuleFor(x => x.Bars).SetCollectionValidator(new BarValidator());
}
private class BarValidator : AbstractValidator<Bar>
{
public BarValidator()
{
RuleFor(x => x.Values).SetCollectionValidator(new ValueValidator());
}
}
private class ValueValidator : AbstractValidator<string>
{
public ValueValidator()
{
RuleFor(x => x).NotEmpty().WithName("Value");
}
}
}
The field is output as "Bars[0].Values[0].Value"How do I get it to output as "Bars[0].Values[0]"?