Table of Contents

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

TRequest

The 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

request TRequest

The TRequest instance to validate.

cancellationToken CancellationToken

A 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.