public ActionResult Review(ReviewActionVm model) { IQueryable <RestuarantReview> review = db.RestuarantReview.Include(p => p.Restuarant); if (model.RestaurantId.HasValue) { review = review.Where(p => p.RestuarantId == model.RestaurantId).AsQueryable(); } switch (model.Type) { case ReviewActionVm.ReviewDisplayType.Latest: review = review.OrderByDescending(p => p.ReviewDate); break; case ReviewActionVm.ReviewDisplayType.Best: review = review.OrderByDescending(p => p.Rating); break; case ReviewActionVm.ReviewDisplayType.Worst: review = review.OrderBy(p => p.Rating); break; } return(PartialView("_Reviews", review.FirstOrDefault())); }
public ActionResult Review(ReviewActionVm model) { IQueryable <Review> review = db.Reviews; if (model.RestaurantId.HasValue) { review = review.Where(p => p.RestaurantId == model.RestaurantId.Value); } if (model.Type == Enums.ReviewDisplayType.Best) { model.Review = review.OrderByDescending(p => p.Rating).FirstOrDefault(); model.Title = "best review"; } else if (model.Type == Enums.ReviewDisplayType.Worse) { model.Review = review.OrderBy(p => p.Rating).ThenByDescending(p => p.ReviewDate).FirstOrDefault(); model.Title = "worst rev"; } else { model.Review = review.OrderByDescending(p => p.ReviewDate).FirstOrDefault(); model.Title = "latest rev"; } return(PartialView("_Review", model)); }