FluentValidation:使用 ValidationContext 进行验证

Oli*_*gel 3 c# validation .net-4.0 mvvm fluentvalidation

我在当前项目中使用 FluentValidation。

最近我偶然发现了 AbstractValidators 验证方法

ValidationResult IValidator.Validate(ValidationContext<T> validationContext)
Run Code Online (Sandbox Code Playgroud)

我没有找到任何关于为什么使用这种方法的用例。何时以及如何使用此方法进行验证有用?

感谢您提供任何意见。

Oli*_*gel 5

已经有一段时间了,但我不想阻止 Jeremy Skinners 回答我关于Codeplex 的问题:

这个[验证上下文]由 FluentValidation 在内部使用。了解其工作原理的最佳机会是实际阅读源代码。这是一个快速总结:

属性链跟踪规则嵌套的深度,例如 customer.Address.Line1

Ivalidatorselector 用于确定应该运行哪些规则。例如,当您只选择验证特定属性时,这将由不同的 ValidatorSelector 处理。

杰里米·斯金纳