.net FluentValidation:没有属性的验证程序
我有一个例子,如果你在app.config中有一些设置,验证器总是会失败,并显示一些消息(不管属性值是什么)。有没有干净的方法可以做到这一点 现在我正在使用以下代码:.net FluentValidation:没有属性的验证程序,.net,fluentvalidation,.net,Fluentvalidation,我有一个例子,如果你在app.config中有一些设置,验证器总是会失败,并显示一些消息(不管属性值是什么)。有没有干净的方法可以做到这一点 现在我正在使用以下代码: RuleFor(x => x.SomeRandomProperty).Must(srp => false).WithMessage("My message"); 您可以像这样覆盖Validate以检查该值是否存在,并返回一个自定义ValidationResult,或者继续执行上面的操作 public override
RuleFor(x => x.SomeRandomProperty).Must(srp => false).WithMessage("My message");
您可以像这样覆盖
Validate
以检查该值是否存在,并返回一个自定义ValidationResult
,或者继续执行上面的操作
public override ValidationResult Validate(Person instance)
{
if(ValueIsInConfigFile)
return new ValidationResult(new List<ValidationFailure>(){new ValidationFailure("SomeProperty", "There is a value in the config file which made this fail")});
return base.Validate(instance);//Will apply your normal Rules
}
public override ValidationResult Validate(个人实例)
{
如果(值为inconfigfile)
返回新的ValidationResult(new List(){new ValidationFailure(“SomeProperty”,“配置文件中有一个值导致此失败”)});
return base.Validate(instance);//将应用常规规则
}
史蒂夫