Как постепенно загружать данные в сетке MVCContrib в ASP.NET MVC2
-
26-10-2019 - |
Вопрос
У меня есть большой набор данных, и я хочу загружать его постепенно, чтобы пользователь был быстрее просмотреть загрузку.
Решение
Вы можете реализовать страницу (используя AsPagination
Метод расширения из MvcContrib.Pagination
Пространство имен):
public ActionResult Index()
{
IEnumerable<MyViewModel> model = ... fetch from somewhere the dataset
return View(model.AsPagination(1, 10));
}
И, по вашему мнению:
@model IPagination<MyViewModel>
@(Html
.Grid<MyViewModel>(Model)
.Columns(columns =>
{
columns.For(x => x.Id);
columns.For(x => x.Name);
})
)
@Html.Pager(Model)
Документация содержит примеры.
Другие советы
Или сделайте это в Twitter - получите другую часть, когда пользователь прокрутите до конца страницы.
Вы можете использовать AJAX для загрузки данных как DIMA Metioned. Если ваш пользовательский опыт чрезвычайно важен, вам может потребоваться больше на 2 или 3 порции. Например, страница загружает первые две части, а затем загружает следующие две части, когда пользователь прокручивает конец части 1. Это может сделать опыт более плавным.