Пример #1
0
        // Nepaginat
        public IEnumerable <HotelGetModel> GetHotels()
        {
            IQueryable <Hotel> result = context.Hotels
                                        .Include(h => h.Reviews);

            return(result.Select(h => HotelGetModel.GetHotelModel(h, context)));
        }
Пример #2
0
        public IQueryable <HotelGetModel> FilterByCity(string city) //, PagingParameters pagingParameters)
        {
            IQueryable <Hotel> hotels = context.Hotels
                                        .OrderBy(h => h.Id)
                                        .Include(h => h.Reviews)
                                        .Where(h => (h.City.ToLower() == city))
                                        .OrderByDescending(h => h.Rating);

            return(hotels.Select(h => HotelGetModel.GetHotelModel(h, context))); //, pagingParameters.PageNumber, pagingParameters.PageSize);
        }
Пример #3
0
        public PaginatedList <HotelGetModel> GetHotelsPaginated(PagingParameters pagingParameters)
        {
            var result = context.Hotels
                         .OrderBy(h => h.Id)
                         .Select(h => HotelGetModel.GetHotelModel(h, context));

            var resultList = result
                             .Skip(pagingParameters.PageNumber * pagingParameters.PageSize)
                             .Take(pagingParameters.PageSize)
                             .ToList();

            var totalItems = resultList.Count();

            var paginatedList = new PaginatedList <HotelGetModel>(totalItems, pagingParameters.PageNumber, pagingParameters.PageSize);

            paginatedList.Items.AddRange(resultList);

            return(paginatedList);
        }