ant*_*ino 3 c# fluentvalidation
我只想验证模型上已更改的属性,不幸的是,默认情况下,流畅的验证似乎会在调用 Validator.Validate(instanceToValidate) 时验证具有规则的每个属性
我尝试将 PropertyChain 设置为仅包含我想要验证的属性并构造一个新的 ValidationContext - 它仍然验证所有规则。
有没有办法使用流畅的验证来实现这一点?
谢谢
所以修复非常简单
var rule = _validator.CreateDescriptor();
var rules = rule.GetRulesForMember(e.PropertyName);
_validationResult = new ValidationResult(rules.SelectMany(x => x.Validate(new ValidationContext(_target))).ToList());
Run Code Online (Sandbox Code Playgroud)
查找已更改的属性的规则,并根据该规则集验证目标对象。