private HttpResponseMessage PostMsq(BaseMsq msq, User user) { if (ModelState.IsValid) { var m = new Msq() { Accuracy = msq.Accuracy, FriendlyPosition = msq.FriendlyPosition, Latitude = msq.Latitude, Longitude = msq.Longitude, Message = msq.Message, User = user }; if (msq.TableID.HasValue) { m.TableId = db.Tables.Single(t => t.RowGuid == msq.TableID.Value).TableId; } db.Msqs.Add(m); db.SaveChanges(); HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, new BaseMsq(m)); response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = m.RowGuid })); return(response); } else { return(Request.CreateResponse(HttpStatusCode.BadRequest)); } }
// GET api/Msq/5 public BaseMsq GetMsq(Guid id) { Msq msq = db.Msqs.SingleOrDefault(m => m.RowGuid == id); if (msq == null) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound)); } return(new BaseMsq(msq)); }
public BaseMsq(Msq msq) { Message = msq.Message; FriendlyPosition = msq.FriendlyPosition; Latitude = msq.Latitude; Longitude = msq.Longitude; Accuracy = msq.Accuracy; ID = msq.RowGuid; UserName = msq.User.UserName; Entered = msq.Entered; if (msq.TableId.HasValue) { TableID = msq.Table.RowGuid; } }
// PUT api/Msq/5 public HttpResponseMessage PutMsq(int id, Msq msq) { if (ModelState.IsValid && id == msq.MsqId) { db.Entry(msq).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { return(Request.CreateResponse(HttpStatusCode.NotFound)); } return(Request.CreateResponse(HttpStatusCode.OK, msq)); } else { return(Request.CreateResponse(HttpStatusCode.BadRequest)); } }
// DELETE api/Msq/5 public HttpResponseMessage DeleteMsq(int id) { Msq msq = db.Msqs.Find(id); if (msq == null) { return(Request.CreateResponse(HttpStatusCode.NotFound)); } db.Msqs.Remove(msq); try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { return(Request.CreateResponse(HttpStatusCode.NotFound)); } return(Request.CreateResponse(HttpStatusCode.OK, msq)); }