/// <summary> Update Visit </summary> /// <param name="id"> visit id </param> /// <param name="visited"></param> /// <returns> Updates Visit Object </returns> public IHttpActionResult Put(VisitedEdit visited, int id) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var visitedService = CreateVisitService(); result = visitedService.UpdateVisit(visited, id); if (result == "Invalid Trail ID") { return(BadRequest("Invalid Trail ID. Trail not found")); } if (result == "Update Error") { return(BadRequest("Invalid Trail ID. You have not visited that Trail.")); } return(Ok()); }
public string UpdateVisit(VisitedEdit model, int id) { using (var ctx = new ApplicationDbContext()) { try { var entity = ctx.Visits.Single(e => e.TrailID == id); if (model.TrailID != null) { entity.TrailID = model.TrailID; } if (model.Rating != 0) { entity.Rating = model.Rating; } if (model.Review != null) { entity.Review = model.Review; } entity.AddToFavorites = model.AddToFavorites; try { ctx.SaveChanges(); return("Okay"); } catch { if (entity.Trail == null) { return("Invalid Trail ID"); } } } catch { } return("Update Error"); } }