Class InstrumentingValidatorDecorator<TValidated>
Decorator for IValidator<TValidated> & IValidator which instruments the result with timing data if applicable.
Inheritance
Inherited Members
Namespace: CSF.Validation
Assembly: CSF.Validation.dll
Syntax
public class InstrumentingValidatorDecorator<TValidated> : IValidator<TValidated>, IValidator
Type Parameters
Name | Description |
---|---|
TValidated | The validated type. |
Constructors
| Improve this Doc View SourceInstrumentingValidatorDecorator(IValidator<TValidated>, IGetsResolvedValidationOptions)
Initialises a new instance of InstrumentingValidatorDecorator<TValidated>.
Declaration
public InstrumentingValidatorDecorator(IValidator<TValidated> validator, IGetsResolvedValidationOptions optionsResolver)
Parameters
Type | Name | Description |
---|---|---|
IValidator<TValidated> | validator | The wrapped validator. |
IGetsResolvedValidationOptions | optionsResolver |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException | If any parameter is null. |
Properties
| Improve this Doc View SourceValidatedType
Gets the type of object that this validator is intended to validate.
Declaration
public Type ValidatedType { get; }
Property Value
Type | Description |
---|---|
System.Type |
Remarks
The first parameter to ValidateAsync(Object, ValidationOptions, CancellationToken) must be of either the type indicated by this property, or a type that is derived from the type indicated by this property.
Methods
| Improve this Doc View SourceValidateAsync(TValidated, ValidationOptions, CancellationToken)
Validate the specified object instance asynchronously and get a validation result.
Declaration
public async Task<IQueryableValidationResult<TValidated>> ValidateAsync(TValidated validatedObject, ValidationOptions options = null, CancellationToken cancellationToken = default(CancellationToken))
Parameters
Type | Name | Description |
---|---|---|
TValidated | validatedObject | The object to be validated. |
ValidationOptions | options | An optional object containing configuration options related to the validation process. |
System.Threading.CancellationToken | cancellationToken | An optional object which enables premature cancellation of the validation process. |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IQueryableValidationResult<TValidated>> | A task containing the result of the validation process. |
Exceptions
Type | Condition |
---|---|
ValidationException | If the validation process fails or errors and the RuleThrowingBehaviour of the resolved options indicate that an exception should be thrown. See IGetsResolvedValidationOptions for more info about how the options are resolved from the defaults configured with DI and the options specified here. |
Explicit Interface Implementations
| Improve this Doc View SourceIValidator.ValidateAsync(Object, ValidationOptions, CancellationToken)
Declaration
async Task<ValidationResult> IValidator.ValidateAsync(object validatedObject, ValidationOptions options, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
System.Object | validatedObject | |
ValidationOptions | options | |
System.Threading.CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<ValidationResult> |