using System.Linq;
namespace <%= repoProjectName %>.Infrastructure
{
public class Page
{
public int PageNumber { get; set; }
public int PageSize { get; set; }
public Page()
{
PageNumber = 1;
PageSize = 10;
}
public Page(int pageNumber, int pageSize)
{
PageNumber = pageNumber;
PageSize = pageSize;
}
public int Skip
{
get { return (PageNumber - 1) * PageSize; }
}
}
public static class PagingExtensions
{
///
/// Extend IQueryable to simplify access to skip and take methods
///
///
///
///
/// IQueryable with Skip and Take having been performed
public static IQueryable GetPage(this IQueryable queryable, Page page)
{
return queryable.Skip(page.Skip).Take(page.PageSize);
}
}
}