Если у вас есть linq-запрос, содержащий все строки, которые вы хотите отобразить, этот код можно использовать:
var pageNum = 3;
var pageSize = 20;
query = query.Skip((pageNum - 1) * pageSize).Take(pageSize);
Вы также можете создать метод расширения для объекта, чтобы иметь возможность писать
query.Page(2,50)
, чтобы получить первые 50 записей на странице 2. Если вы этого хотите, информация находится в блоге с твердым кодом .