public async Task <IActionResult> InsertProductAsync([HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "v2/products")] HttpRequest request) { var correlationId = request.GetHeaderValue("correlationId"); var dto = await request.ToModel <InsertProductDto>(); dto.CorrelationId = correlationId; var operation = await _mediator.Send(dto); if (!operation.Status) { _logger.LogError("Error occured when upserting product {correlationId}", correlationId); } var response = _responseFormatter.Render(dto, operation); return(response); }
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); }
public void Invoke(IRenderAction action) { action.Render(); }
public static RenderAction Create <T>(IRenderAction <T> renderAction) { return(new RenderAction(typeof(T), (node, ctx) => renderAction.Render((T)node, ctx))); }