Interface IAddressValidationService<TRequest>
- Namespace
- Visus.AddressValidation.Services
- Assembly
- Visus.AddressValidation.dll
Abstraction for implementing an address validation service.
public interface IAddressValidationService<in TRequest> where TRequest : AbstractAddressValidationRequest
Type Parameters
TRequestThe provider-specific request type. It must derive from AbstractAddressValidationRequest.
Methods
ValidateAsync(TRequest, CancellationToken)
Validates the request instance asynchronously.
Task<IAddressValidationResponse?> ValidateAsync(TRequest request, CancellationToken cancellationToken = default)
Parameters
requestTRequestThe
TRequestinstance to validate.cancellationTokenCancellationTokenA token that cancels the operation.
Returns
- Task<IAddressValidationResponse>
The validation result as an IAddressValidationResponse.
Remarks
The returned IAddressValidationResponse may be null if the provider returns no response. If the request or response fails validation, this method returns an EmptyAddressValidationResponse instead.