Для подкачки на стороне сервера я использую https://github.com/dvsspr/Halaman. Это еще не задокументировано, но оно очень гибкое и использует свободную конфигурацию.
Один очень простой вариант использования для вас.
@ Контроллер
public ActionResult Index(AdminPageInfo page, SortInfo sort)
{
PagedData<Account> model = accountRepository.Get().AsPagedData(page, sort);
return (model.IsValid) ? View(model) : View("_Error");
}
@ Вид
@model PagedData<Account>
@{
ViewBag.Title = "Account Index";
}
<p>
Total records: <strong>@Model.TotalRows</strong>
<br />
Total pages: <strong>@Model.TotalPages</strong>
<br />
Total records in current page: <strong>@Model.TotalRowsInPage</strong>
</p>
@Html.Pager(Model)
@Html.Sizer(Model) @* Page size changer helper =) *@
@*
Put a dot after the closing brace and you will see the available options.
*@
<h3>Sorter</h3>
<li>
<ul>@(Html.SortLink<Account>(zz => zz.Id, Model, "User Id"))</ul>
<ul>@(Html.SortLink<Account>(zz => zz.UserName, Model, "User Name"))</ul>
<ul>@(Html.SortLink<Account>(zz => zz.FullName, Model, "Full Name"))</ul>
</li>
@foreach (var acc in Model) {
<p>
User name: @acc.UserName
<br />
Full name: @acc.FullName
</p>
}
Вот и все.ИМХО, кодовая база может быть легко взломана - на тот случай, если вы захотите реализовать гибридную подкачку.