Come caricare in modo incrementale i dati nella griglia MvcContrib in Asp.Net MVC2
-
26-10-2019 - |
Domanda
Ho un grande insieme di dati e voglio caricarlo in modo incrementale in modo che l'utente avrà più veloce vista di carico.
Soluzione
Si potrebbe implementare l'impaginazione (utilizzando il metodo di estensione AsPagination
dallo spazio dei nomi MvcContrib.Pagination
):
public ActionResult Index()
{
IEnumerable<MyViewModel> model = ... fetch from somewhere the dataset
return View(model.AsPagination(1, 10));
}
e nella vista:
@model IPagination<MyViewModel>
@(Html
.Grid<MyViewModel>(Model)
.Columns(columns =>
{
columns.For(x => x.Id);
columns.For(x => x.Name);
})
)
@Html.Pager(Model)
La documentazione contiene esempi.
Altri suggerimenti
o di farlo in modo Twitter -. Ottenere un'altra porzione quando scrollare su e giù alla fine della pagina
È possibile utilizzare Ajax per caricare i dati come metioned Dima. Se la vostra esperienza utente è estremamente importante, potrebbe essere necessario caricare 2 o 3 porzioni di più. Ad esempio, la pagina viene caricata le prime due porzioni, e quindi successivo carica due porzioni quando l'utente scorre l'estremità della porzione 1. Ciò può rendere l'esperienza più agevole.