public async Task <ActionResult> Post( [FromServices] CreateProductHandler handler, [FromBody] CreateProductCommand command) { try { var result = (CommandResult)handler.handle(command); if (!result.Success) { return(BadRequest(result)); } return(Ok(result)); } catch (Exception e) { return(BadRequest(e)); } }