public async Task<IHttpActionResult> PutExpansion(int id, Expansion expansion) { if (!ModelState.IsValid) { return BadRequest(ModelState); } if (id != expansion.Id) { return BadRequest(); } db.Entry(expansion).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ExpansionExists(id)) { return NotFound(); } else { throw; } } return StatusCode(HttpStatusCode.NoContent); }
public async Task<IHttpActionResult> PostExpansion(int gameId, Expansion expansion) { if (!ModelState.IsValid) { return BadRequest(ModelState); } var parentGame = db.Games.Find(gameId); if(parentGame == null) { return NotFound(); } parentGame.Expansions.Add(expansion); await db.SaveChangesAsync(); return CreatedAtRoute("NewExpansion", new { id = expansion.Id }, new Models.DTO.Expansion(expansion)); }