コード例 #1
0
        public IActionResult Get()
        {
            var pagination = Request.Headers["Pagination"];

            if (!string.IsNullOrEmpty(pagination))
            {
                string[] vals = pagination.ToString().Split(',');
                int.TryParse(vals[0], out page);
                int.TryParse(vals[1], out pageSize);
            }

            int currentPage     = page;
            int currentPageSize = pageSize;
            var totalBooks      = _booksRepository.Count();
            var totalPages      = (int)Math.Ceiling((double)totalBooks / pageSize);

            IEnumerable <Order> _order = _orderRepository
                                         .AllIncluding(b => b.Books)
                                         .OrderBy(b => b.Id)
                                         .Skip((currentPage - 1) * currentPageSize)
                                         .Take(currentPageSize)

                                         .ToList();

            Response.AddPagination(page, pageSize, totalBooks, totalPages);

            IEnumerable <OrderViewModel> _orderVM = Mapper.Map <IEnumerable <Order>, IEnumerable <OrderViewModel> >(_order);

            return(new OkObjectResult(_orderVM));
        }