質問

私は大きなデータセットを持っています、そして、私はそれを段階的にロードしたいので、ユーザーがより速いビューロードを得るようにします。

役に立ちましたか?

解決

ページネーションを実装できます(を使用して 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系統としてデータをロードできます。ユーザーエクスペリエンスが非常に重要な場合は、2つまたは3つの部分をさらにロードする必要がある場合があります。たとえば、ページは最初の2つの部分をロードし、ユーザーが部分1の終了をスクロールするときに次の2つの部分をロードします。これにより、エクスペリエンスがよりスムーズになります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top