public async Task <Result <GetProductResponse> > Handle(GetProductByCodeDto request, CancellationToken cancellationToken) { var serviceRequest = new GetProductByCodeRequest(request.CorrelationId, request.ProductCode); var operation = await _mediator.Send(serviceRequest, cancellationToken); return(operation); }
public IActionResult Render(GetProductByCodeDto request, Result <GetProductResponse> response) { if (!response.Status) { return(GetErrorResponse(response)); } return(new OkObjectResult(response.Data)); }
public async Task <IActionResult> GetProductAsync([HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = "v1/products/{productCode}")] HttpRequest request, string productCode) { var correlationId = request.GetHeaderValue("correlationId"); var dto = new GetProductByCodeDto { CorrelationId = correlationId, ProductCode = productCode }; var operation = await _mediator.Send(dto); if (!operation.Status) { _logger.LogError("Error occured when getting product: {correlationId}", correlationId); } var result = _responseFormatter.Render(dto, operation); return(result); }