diff --git a/EntityFrameworkPaginate/PaginateService.cs b/EntityFrameworkPaginate/PaginateService.cs
index 95086e8..90ee863 100644
--- a/EntityFrameworkPaginate/PaginateService.cs
+++ b/EntityFrameworkPaginate/PaginateService.cs
@@ -1,5 +1,6 @@
using System;
using System.Linq;
+using System.Data.Entity;
namespace EntityFrameworkPaginate
{
@@ -16,12 +17,14 @@ public static class PaginateService
/// A Page object with filtered data for the given page number and page size.
public static Page Paginate(this IQueryable query, int pageNumber, int pageSize)
{
+ var pageSkip = (pageNumber - 1) * pageSize;
+
var result = new Page
{
CurrentPage = pageNumber,
PageSize = pageSize,
RecordCount = query.Count(),
- Results = query.Skip((pageNumber - 1) * pageSize).Take(pageSize).ToList()
+ Results = query.Skip(() => pageSkip).Take(() => pageSize).ToList()
};
result.PageCount = (int)Math.Ceiling((double)result.RecordCount / pageSize);
return result;