如何在Asp.Net MVC2中的mvccontrib网格中逐步加载数据

时间:2011-09-06 08:25:43

标签: asp.net asp.net-mvc-2 mvccontrib-grid

我有一个大型数据集,我想逐步加载它,以便用户可以更快地加载视图。

3 个答案:

答案 0 :(得分:0)

您可以使用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)

The documentation包含示例。

答案 1 :(得分:0)

或者以Twitter方式进行 - 当用户滚动到页面末尾时获取另一部分。

答案 2 :(得分:0)

您可以使用ajax加载数据,如Dima所述。 如果您的用户体验非常重要,则可能需要再加载2或3个部分。例如,页面加载前两个部分,然后在用户滚动部分1的末尾时加载下两个部分。这可以使体验更加顺畅。