1
Я использую FluentValidation for .NETУсловно выполнение правила с FluentValidation для .NET
У меня есть эти три правила:
RuleFor(customer => customer.Name).NotEmpty();
RuleFor(customer => customer.Phone).NotEmpty();
RuleFor(customer => customer.Birthday).NotEmpty();
И я хочу, чтобы выполнить этот только если три другие проверенную успешно.
RuleFor(customer => customer).Must(IsUnique).WithMessage("...");
Мое требование не использовать Chaining валидаторов как here, потому что первые три не будет оцениваться, если предыдущий каждого из них не прошел проверку.
Что я хочу, если один из первых трех пуст, чтобы отобразить пользователю требуемые поля. Если все три не пусты, то я хочу проверить последний.
+1 Это не совсем то, что я хочу, потому что я хочу выполнить последнее правило, не повторяя все предыдущие проверки. Первые три правила должны быть выполнены до последнего. Однако это хороший шаг к решению. – Samuel