public async Task <HealthCheckResult> CheckHealthAsync(HealthCheckContext context, CancellationToken cancellationToken = new CancellationToken()) { var databaseHealthCheckRequest = new DatabaseHealthCheckRequest("HEALTH_CHECK"); var operation = await _mediator.Send(databaseHealthCheckRequest, cancellationToken); if (operation.Status) { return(HealthCheckResult.Healthy()); } var errorData = operation.Validation.Errors.ToDictionary(x => x.ErrorCode, x => (object)x.ErrorMessage); return(HealthCheckResult.Unhealthy("Accessing product data", data: errorData)); }
public async Task <Result <GetProductResponse> > Handle(DatabaseHealthCheckRequest request, CancellationToken cancellationToken) { var query = new GetProductByCodeQuery(request.CorrelationId, "BLAHBLAH"); var operation = await _mediator.Send(query, cancellationToken); if (!operation.Status) { return(Result <GetProductResponse> .Failure(operation.ErrorCode, operation.Validation)); } var getProductResponse = new GetProductResponse { ProductCode = "HEALTH_CHECK", ProductName = "HEATH_CHECK" }; return(Result <GetProductResponse> .Success(getProductResponse)); }