C# FluentValidation规则

C# FluentValidation规则,c#,model-view-controller,fluentvalidation,C#,Model View Controller,Fluentvalidation,我有一个关于FluentValidation的问题。我目前有以下验证: RuleFor(x => x.value) .NotNull() .WithMessage("This field is mandatory."); 如何添加条件,以便仅当x.mandatory属性的值等于true时才进行验证?FluentValidation在和方法时支持带有的条件,除非方法。有关详细信息,请参见文档中的此页 通过将调用链接到NotNull之后的W

我有一个关于FluentValidation的问题。我目前有以下验证:

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

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

FluentValidation在
方法时支持带有
的条件,除非
方法。有关详细信息,请参见文档中的此页

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

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

谢谢你,杰里米!