流利的验证失败后如何调用方法

时间:2019-03-15 11:27:39

标签: c# validation fluentvalidation

如果流利的验证方法失败,我想运行一个方法。

RuleFor(x => x.SheepName)
            .Must(x => x.SheepName == null)
            .When(x => x.HasSheep == false)
            .Otherwise(callMethod());

因此,在这种情况下,如果HasSheep值是false,但仍然给出SheepName,那么我想运行一个方法(在该示例中,该方法称为'callMethod()')。

我已经编写了.Otherwise语句,因此寻找整行'.Otherwise(callMethod());'应该是..

1 个答案:

答案 0 :(得分:4)

您正在寻找OnFailure(…),已记录here

  

如果验证失败,则可以使用OnAnyFailure和OnFailure(从8.0版本开始)回调来运行方法。

RuleFor(x => x.SheepName)
       .Must(x => x.SheepName == null)
       .When(x => x.HasSheep == false)
       .OnFailure(x => callMethod());