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()));
        }
示例#2
0
        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));
        }