如何<ValidationResult>从 Asp Core 中的 ValidationAttribute 获取 IEnumerable



在Asp Mvc版本中,可以使用IValidatableObject接口在IsValid方法上获取IEnumerable。

public IEnumerable<ValidationResult> Validate(ValidationContext validationContext) {
// yield collection of validation results here
}

但在 Asp Core 版本中,我们打算使用 ValidationAttribute 来实现自定义验证。但是,可用方法仅返回单个验证结果。

protected override ValidationResult IsValid(object value, ValidationContext validationContext) {
// custom validation
}

如果我们需要在单个事件中抛出多个验证结果怎么办?

IValidatableObject.Validate(ValidationContext)方法仍返回IEnumerable<ValidationResult>。API 中没有变化。下面是 API 文档。

最新更新