J'ai 3 fonctions différentes sur ma page. 1.) Rechercher, 2.) Trier et 3.) PagingPage à travers l'ensemble de données sans avoir de nouveau jeu de données dans MVC C#
J'ai tout cela fonctionne, mais je me demandais si quelqu'un sait comment, ou peut me pointer quelque part qui montre comment enregistrer, par utilisateur, l'ensemble de données afin qu'ils puissent trier et la page sans chercher à nouveau, puis également lorsque l'utilisateur effectue une recherche pour récupérer les données.
J'utilise actuellement MVC5, Bootstrap et PagedList.MVC
Voici un exemple de ce que je dois. Honnêtement, je ne suis pas sûr de savoir comment ou même si je devrais mettre les données en cache, mais il semble que je voudrais car ces données changent régulièrement (ce sont des événements d'une base de données) et j'aimerais que l'utilisateur travaille avec l'ensemble de données cherché et non avec un nouveau jeu de données chaque fois qu'ils font la page ou le tri.
private List<Models.EventItem> events = null;
[HttpPost]
public ActionResult ViewLogs(ViewModels.ViewLogs model)
{
if (model.ActionPerformed == "search")
{
// it was a search, so let's pull new events in.
events = Business.Events.GetEvents(GetCurrentSearchParameters(model));
}
if (model.ActionPerformed == "sort")
{
events = null // need to grab events from the cached dataset?
// then need to perform the sort on the cached dataset.
}
if (model.ActionPerformed == "page")
{
events = null // need to grab events from the cached dataset?
}
model.EventItems = events.ToPagedList(model.CurrentPage, model.PageSize);
return View("ViewLogs", model);
}
[HttpGet]
public ActionResult ViewLogs()
{
// ViewLogs (Get) will take defaults instead.
ViewModels.ViewLogs model = new ViewModels.ViewLogs();
events = Business.Events.GetEvents(GetCurrentSearchParameters(model));
model.EventItems = events.ToPagedList(model.CurrentPage, model.PageSize);
return View(model);
}
vous pouvez effectuer toutes ces opérations en accédant 'DataSet.Tables [0] .DefaultView' – techspider
Regardez l'article https: // msdn .microsoft.com/fr-fr/library/69c06922 (v = vs.71) .aspx – techspider
Désolé, ce n'était pas clair. J'appelle d'abord ViewLogs() et montre les données. Ensuite, ils affichent soit un tri, une page, ou une recherche et il appelle ViewLogs (modèle) et les données que j'ai eues ne sont plus là. La seule façon pour moi de le récupérer est de rappeler l'ensemble de données. Je suis à la recherche d'un moyen de conserver les données entre les publications. –