public IHttpActionResult Put(int id, [FromBody] UnitEdit editedItem) { if (editedItem == null) { return(BadRequest("Must send an entity body with the request")); } if (id != editedItem.Id) { return(BadRequest("Invalid data in the entity body")); } if (ModelState.IsValid) { var changedItem = m.UnitEdit(editedItem); if (changedItem == null) { // HTTP 400 return(BadRequest("Cannot edit the object")); } else { // HTTP 200 return(Ok(changedItem)); } } else { return(BadRequest(ModelState)); } }
public UnitBase UnitEdit(UnitEdit editedItem) { if (editedItem == null) { return(null); } var storedItem = ds.Units.SingleOrDefault(e => e.Id == editedItem.Id); if (storedItem == null) { return(null); } else { ds.Entry(storedItem).CurrentValues.SetValues(editedItem); ds.SaveChanges(); return(Mapper.Map <UnitBase>(storedItem)); } }