In einer einzigen Ansicht habe ich drei Sätze von ausgelagerten Daten. Die für jedes Modell bedeutet, werde ichSo geben Sie mehrere Datensätze in ASP.NET MVC frei
- Die Objekte
- Der Seitenindex
- Die Seitengröße
Mein erster Gedanke war zum Beispiel:
public class PagedModel<T> where T:class
{
public IList<T> Objects { get; set; }
public int ModelPageIndex { get; set; }
public int ModelPageSize { get; set; }
}
dann mit ein Modell, das der Aktion zugeführt werden soll, wie zum Beispiel:
public class TypesViewModel
{
public PagedModel<ObjectA> Types1 { get; set; }
public PagedModel<ObjectB> Typed2 { get; set; }
public PagedModel<ObjectC> Types3 { get; set; }
}
Also, wenn ich dann zum Beispiel die Indexansicht erben vom Typ haben:
System.Web.Mvc.ViewPage<uk.co.andrewrea.forum.Web.Models.TypesViewModel>
Nun meine erste aciton Methode für den Index ist einfach:
public ActionResult Index()
{
var forDisplayPurposes = new TypesViewModel();
return View(forDisplayPurposes);
}
Wenn ich dann zu wollen Seite, es ist hier, wo ich bin zu kämpfen, um zu entscheiden, welche Maßnahme zu ergreifen. Sagen wir, dass ich die nächste Seite des Page2 Model2-Modells auswähle. Was sollte die Aktion aussehen für diese, um die neue Ansicht, die die zweite Seite des Types2 PageModel
ich vielleicht dachte zurückzukehren, um die Aktion zu duplizieren, sondern verwenden Sie es mit POST
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Index(TypesViewModel model)
{
return View(model);
}
Ist das ein guter Weg, um es anzugehen. Ich verstehe, dass es immer Session gibt, aber ich habe mich nur gefragt, wie so etwas derzeit erreicht wird. Wenn irgendwelche besten Methoden gegenseitig akzeptiert wurden und Dinge.
So einfach, eine Seite mit mehreren ausgelagerten Modellen. Wie behalte ich die Daten für jede Verwendung eines Wrapper-Modells? Welcher Weg sollte man im Modell übergeben und die Art und Weise sollten Sie Seite der Daten, dh Formularübermittlung
Schließlich habe ich also
{controller}/{action}/{id}/{pageindex}/{pagesize}
aber dies nur Konten für ein Modell der Routen berücksichtigen dies gesehen und ich möchte nicht wirklich die Seitengröße und den Seitenindex für die Anzahl der Modelle wiederholen, die ich im Wrappermodell habe.
Danke für Ihre Zeit !!
Andrew
Was ist die Frage? Wie können Sie Ihre Routen erstellen? –
Einfach eine gute Möglichkeit, Routen und das Modell zu behandeln, wenn eine einzelne Seite mehrere Datensätze enthält, die separat gepaged werden müssen. Ich möchte nicht pageIndex1/pageSize1/pageIndex2/pageSize2 etc ... –