【问题标题】:FluentValidation properties conditionsFluentValidation 属性条件
【发布时间】:2019-11-18 21:29:54
【问题描述】:

我有两个必须验证的属性,但一次验证一次。如果一个为空,则验证另一个,所以我尝试这样:

RuleFor(a => a.CNPJ).Must(a => CNPHelper.CheckCNPJ(a)).When(a => !string.IsNullOrEmpty(a.CPF));
RuleFor(a => a.CPF).Must(a => CNPHelper.CheckCPF(a)).When(a => !string.IsNullOrEmpty(a.CNPJ));

但是必须是强制的,怎么改呢?

【问题讨论】:

    标签: asp.net-mvc fluentvalidation


    【解决方案1】:

    您能否尝试 DependentRules 扩展。 从文档(https://fluentvalidation.net/start#conditions)参考,您可以实现它

    RuleFor(x => x.Surname).NotNull().DependentRules(() => {
      RuleFor(x => x.Forename).NotNull();
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-30
      • 1970-01-01
      • 1970-01-01
      • 2022-01-28
      • 2011-12-03
      相关资源
      最近更新 更多