Question

J'ai un grand ensemble de données et je veux le charger progressivement afin que l'utilisateur aura un chargement plus rapide de la vue.

Était-ce utile?

La solution

Vous pourriez mettre en œuvre la pagination (en utilisant la méthode d'extension de AsPagination de l'espace de noms MvcContrib.Pagination):

public ActionResult Index()
{
    IEnumerable<MyViewModel> model = ... fetch from somewhere the dataset
    return View(model.AsPagination(1, 10));
}

et votre point de vue:

@model IPagination<MyViewModel>
@(Html
    .Grid<MyViewModel>(Model)
    .Columns(columns =>
    {
        columns.For(x => x.Id);
        columns.For(x => x.Name);
    })
)
@Html.Pager(Model)

de documentation contient des exemples.

Autres conseils

Ou le faire de façon Twitter -. Obtenir une autre partie lors de défilement de l'utilisateur à la fin de la page

Vous pouvez utiliser ajax pour charger les données comme Dima metioned. Si votre expérience utilisateur est extrêmement important, vous devrez peut-être charger 2 ou 3 portions plus. Par exemple, la page se charge les deux premières parties, puis des charges suivant deux parties lorsque l'utilisateur fait défiler la fin de la partie 1. Cela pourrait rendre l'expérience plus lisse.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top