// POST odata/TodoItems public IHttpActionResult Post(TodoItem todoitem) { if (!ModelState.IsValid) { return BadRequest(ModelState); } todoitem.InSync = true; db.TodoItems.Add(todoitem); try { db.SaveChanges(); } catch (DbUpdateException) { if (TodoItemExists(todoitem.Id)) { return Conflict(); } else { throw; } } return Created(todoitem); }
// PUT odata/TodoItems(5) public IHttpActionResult Put([FromODataUri] Guid key, TodoItem todoitem) { if (!ModelState.IsValid) { return BadRequest(ModelState); } if (key != todoitem.Id) { return BadRequest(); } todoitem.InSync = true; db.Entry(todoitem).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!TodoItemExists(key)) { return NotFound(); } else { throw; } } return Updated(todoitem); }