Guest User

Page

a guest
Sep 18th, 2017
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.06 KB | None | 0 0
  1. using System.Collections.Generic;
  2.  
  3. namespace Core
  4. {
  5.     public class Page<TEntity>
  6.     {
  7.         private const int DefaultPageNumber = 1;
  8.         private const int DefaultPageSize = 10;
  9.         private readonly ICollection<TEntity> _pageData;
  10.  
  11.         public Page() : this(DefaultPageNumber, DefaultPageSize)
  12.         {
  13.         }
  14.  
  15.         public Page(int pageNumber, int pageSize) : this(pageNumber, pageSize, new List<TEntity>(), 0)
  16.         {
  17.         }
  18.  
  19.         public Page(int pageNumber, int pageSize, ICollection<TEntity> pageData, int totalRows)
  20.         {
  21.             PageNumber = pageNumber == 0 ? DefaultPageNumber : pageNumber;
  22.             PageSize = pageSize == 0 ? DefaultPageSize : pageSize;
  23.             _pageData = pageData;
  24.             TotalRows = totalRows;
  25.         }
  26.  
  27.         public int NumberOfRecordsToSkip => (PageNumber - 1) * PageSize;
  28.  
  29.         public ICollection<TEntity> PageData => _pageData;
  30.  
  31.         public int PageNumber { get; set; }
  32.         public int PageSize { get; set; }
  33.         public int TotalRows { get; set; }
  34.     }
  35. }
Add Comment
Please, Sign In to add comment