FluentValidation规则

问题描述

我对FluentValidation有疑问。我目前有以下验证:

  RuleFor(x => x.value)
       .NotNull()
       .WithMessage("This field is mandatory.");

如何添加条件,以便仅在x.mandatory属性的值等于true时才进行验证?

解决方法

FluentValidation支持WhenUnless方法的条件。有关详细信息,请参见文档中的此页面https://docs.fluentvalidation.net/en/latest/conditions.html

通过在NotNull之后将调用链接到When,可以实现您的目标:

 RuleFor(x => x.value)
   .NotNull()
   .When(x => x.mandatory)
   .WithMessage("This field is mandatory.");

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...