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 <Books> _books = _booksRepository .AllIncluding(b => b.Author) .OrderBy(b => b.Id) .Skip((currentPage - 1) * currentPageSize) .Take(currentPageSize) .ToList(); Response.AddPagination(page, pageSize, totalBooks, totalPages); IEnumerable <BooksViewModel> _booksVM = Mapper.Map <IEnumerable <Books>, IEnumerable <BooksViewModel> >(_books); return(new OkObjectResult(_booksVM)); }