我有一个案例,如果你在 app.config 中有一些设置,验证器应该总是失败一些消息(无论任何属性值)。有干净的方法吗?
现在我正在使用此代码:
RuleFor(x => x.SomeRandomProperty).Must(srp => false).WithMessage("My message");
答案 0 :(得分:1)
您可以像这样覆盖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
}
史蒂夫