public Car Add(Car car) { car.Id = _nextId; _carsDictionary.TryAdd(car.Id, car); _nextId++; return car; }
// POST /api/cars public HttpResponseMessage PostCar(Car car) { var createdCar = _carsCtx.Add(car); var response = Request.CreateResponse(HttpStatusCode.Created, createdCar); response.Headers.Location = new Uri( Url.Link("DefaultHttpRoute", new { id = createdCar.Id })); return response; }
public bool TryUpdate(Car car) { Car oldCar; if (_carsDictionary.TryGetValue(car.Id, out oldCar)) { return _carsDictionary.TryUpdate(car.Id, car, oldCar); } return false; }
// PUT /api/cars/{id} public Car PutCar(int id, Car car) { car.Id = id; if (!_carsCtx.TryUpdate(car)) { var response = Request.CreateResponse(HttpStatusCode.NotFound); throw new HttpResponseException(response); } return car; }