Namespace CSF.Validation
Classes
BaseValidatorFactory
A factory service that gets instances of Validator<TValidated>.
ExceptionThrowingValidatorWrapper
A service which wraps instances of validators with exception-throwing behaviour.
InsrumentingValidatorWrapper
Default implementation of IWrapsValidatorWithInstrumentationSupport.
InstrumentingValidatorDecorator<TValidated>
Decorator for IValidator<TValidated> & IValidator which instruments the result with timing data if applicable.
JsonManifestModelSerializer
Default implementation of ISerializesManifestModelToFromJson which uses System.Text.Json
.
JsonManifestModelSerializerExtensions
Extension methods for ISerializesManifestModelToFromJson.
JsonServiceCollectionExtensions
Extension methods for a service collection which adds JSON-serialization services.
MessageEnrichingValidatorDecorator<TValidated>
A decorator service which wraps a IValidator<TValidated> and extends it to be usable as either a IValidator<TValidated> or IValidator.
MessageSupportValidatorWrapper
A service which wraps a validator with functionality which adds message support.
ResolvedValidationOptions
A model for options which affect how a validator should behave whilst it is performing its validation.
RuleBuilderExtensions
Extension methods for instances of IConfiguresRule<TRule>.
RuleInstrumentationData
A small model which represents instrumentation data about the execution of a single validation rule.
RuleResultIsForDescendentOfValue
A specification for validation rule results which must be for a specified value, or a descendent of that value.
SerializableValidationResult
A model for a validation result which is easy to serialize/deserialize to/from data formats.
SerializableValidationRuleResult
A model for a validation rule result which is easy to serialize/deserialize to/from data formats.
ServiceCollectionExtensions
Extension methods to add validation to a dependency injection container.
StandardRulesServiceCollectionExtensions
Extension methods to add validation to a dependency injection container.
SubsetOfValidationResults<TValidated>
An implementation of IQueryableValidationResult<TValidated> which represents a subset of a larger validation result. This is usually due to some form of filtering of the original result.
ThrowingBehaviourValidatorDecorator<TValidated>
A decorator for IValidator<TValidated> which throws an exception if the combination of validation result and RuleThrowingBehaviour indicate that an exception should be thrown.
ValidationException
An exception which may be raised by an IValidator or an IValidator<TValidated>.
ValidationOptions
A model for options which affect how a validator should behave whilst it is performing its validation.
ValidationOptionsResolver
A service which gets the resolved validation options.
ValidationResult
A model for the results of a validation process.
ValidationResult<TValidated>
A strongly-typed validation result.
ValidationRuleResult
Represents information about the result of running a single validation rule. Typically this is a class which implements either IRule<TValidated> or IRule<TValue, TParent>.
Validator<TValidated>
The validator service, which validates instances of TValidated
and returns a result.
ValidatorBuildingException
An exception which may be raised when building a validator.
ValidatorFactory
A service which gets a validator from any of a number of mechanisms.
ValidatorFactoryExtensions
Extensionm methods for IGetsValidator.
ValidatorHost
Default implementation of IHostsValidationFramework.
ValueContextIsMatchForItem
A specification for validation value contexts that match a specified manifest value and optionally a validated item.
Interfaces
IBuildsValidator<TValidated>
An object which may be used to build a validator, specifying its configuration such as the rules which the validator will use.
IGetsBaseValidator
An object which can get an instance of Validator<TValidated>, the basic/fundamental part of the validator.
IGetsResolvedValidationOptions
An object which can get the resolved/final/effective validation options, combining all of the ways in which they might be specified.
IGetsValidator
An object which may be used as the factory from which to create validator instances.
IHostsValidationFramework
An object which hosts a validation framework in a self-contained manner, for applications which do not use dependency injection.
IQueryableValidationResult
An object which contains validation rule results, which may be queried for specific results.
IQueryableValidationResult<TValidated>
A strongly-typed specialisation of IQueryableValidationResult.
ISerializesManifestModelToFromJson
An object which can serialize & deserialize a Value to or from JSON.
IValidator
An object which may be used to validate object instances and get a validation result.
IValidator<TValidated>
An object which may be used to validate instances of a specified object type and get a validation result.
IWrapsValidatorWithExceptionBehaviour
An object which wraps a validator instance with appropriate exception-throwing behaviour.
IWrapsValidatorWithInstrumentationSupport
An object which wraps a validator instance with appropriate instrumentation behaviour.
IWrapsValidatorWithMessageSupport
An object which wraps a validator instance with the capability to show human-readable feedback messages for failde validation rules.
Enums
RuleThrowingBehaviour
Enumerates the available scenarios in which a validator will throw an exception due to either failure or unexpected exceptions from validation rules.