// POST: api/Orders public async Task <IHttpActionResult> Post([FromBody] Order order, CancellationToken ct) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { await _service.Add(order, ct); } catch { if (OrderExists(order.OrderId)) { return(Conflict()); } throw; } return(CreatedAtRoute("OrderRoute", new { id = order.OrderId }, order)); }