Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Web;
- namespace HRCap.Models.ViewModels
- {
- public class Pager
- {
- public Pager(int totalItems, int? page, int pageSize = 10)
- {
- // calculate total, start and end pages
- var totalPages = (int)Math.Ceiling((decimal)totalItems / (decimal)pageSize);
- var currentPage = page != null ? (int)page : 1;
- var startPage = currentPage - 5;
- var endPage = currentPage + 4;
- if (startPage <= 0)
- {
- endPage -= (startPage - 1);
- startPage = 1;
- }
- if (endPage > totalPages)
- {
- endPage = totalPages;
- if (endPage > 10)
- {
- startPage = endPage - 9;
- }
- }
- TotalItems = totalItems;
- CurrentPage = currentPage;
- PageSize = pageSize;
- TotalPages = totalPages;
- StartPage = startPage;
- EndPage = endPage;
- }
- public int TotalItems { get; private set; }
- public int CurrentPage { get; private set; }
- public int PageSize { get; private set; }
- public int TotalPages { get; private set; }
- public int StartPage { get; private set; }
- public int EndPage { get; private set; }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement