public static void Main()
var foobar = new ThingA();
var validator = new ThingAValidator();
var result = validator.Validate(foobar);
Console.WriteLine(string.Join(" ,", result.Errors));
public ThingB Foo { get; set; }
public string Bar { get; set; } = "A";
class ThingAValidator : AbstractValidator<ThingA>
.SetValidator(new ThingBValidator())
.WithMessage("ThingAValidator");
class ThingBValidator : AbstractValidator<ThingB>
.WithSeverity(Severity.Error)
.WithMessage("ThingBValidator");