// GET: api/Restaurants/5 public Restaurant Get(int restaurantId) { using (var entitites = new RestaurantDbEntities()) { return(entitites.Restaurants.FirstOrDefault(r => r.Id == restaurantId)); } }
// GET: api/Restaurants public IEnumerable <Restaurant> Get() { using (var entitites = new RestaurantDbEntities()) { return(entitites.Restaurants.ToList()); } }
// POST: api/Restaurants public void Post(Restaurant restaurant) { using (var entitites = new RestaurantDbEntities()) { entitites.Restaurants.Add(restaurant); entitites.SaveChanges(); } }
// DELETE: api/Restaurants/5 public void Delete(int restaurantId) { using (var entitites = new RestaurantDbEntities()) { var existingRestaurant = entitites.Restaurants.FirstOrDefault(r => r.Id == restaurantId); if (existingRestaurant != null) { entitites.Restaurants.Remove(existingRestaurant); entitites.SaveChanges(); } } }
// PUT: api/Restaurants/5 public void Put(int restaurantId, Restaurant restaurant) { using (var entitites = new RestaurantDbEntities()) { var existingRestaurant = entitites.Restaurants.FirstOrDefault(r => r.Id == restaurantId); if (existingRestaurant != null) { existingRestaurant.Name = restaurant.Name; existingRestaurant.Address = restaurant.Address; existingRestaurant.Description = restaurant.Description; existingRestaurant.Hours = restaurant.Hours; existingRestaurant.NumberOfRatings = restaurant.NumberOfRatings; existingRestaurant.TotalRatings = restaurant.TotalRatings; existingRestaurant.AverageRating = restaurant.AverageRating; entitites.SaveChanges(); } } }
// POST api/values public void Post(Rating rating) { using (var entitites = new RestaurantDbEntities()) { var existingRestaurant = entitites.Restaurants.FirstOrDefault(r => r.Id == rating.RestaurantId); if (existingRestaurant != null) { var previousAverageRating = existingRestaurant.AverageRating; existingRestaurant.NumberOfRatings += 1; existingRestaurant.TotalRatings += rating.Value; existingRestaurant.AverageRating = existingRestaurant.TotalRatings / (decimal)existingRestaurant.NumberOfRatings; entitites.SaveChanges(); if (previousAverageRating >= 2 && existingRestaurant.AverageRating < 2) { // Trigger an event notification when the average rating transitions below 2 } } } }