Frage

Ich kann nicht scheinen, um eine Antwort auf diese Frage oder ein gutes Beispiel dafür zu finden, wie man zu erreichen, was ich zu tun versuchen. Ich bin sicher, es ist bereits irgendwo geschrieben oder erklärt, aber ich habe Probleme, die genaue Lösung, die ich bei der Suche.

Ich verwende Active in Subsonic 3.0.0.4. Wenn ich so etwas wie

recordset = VehicleModel.Find(x => x.Model.StartsWith(SearchText));

ich eine IList zurück von VehicleModel Objekten (oder einfach ein Re-Cord), das ist in Ordnung, bis ich zu viele Datensätze zurück. Ich kann auch nicht das zurückgegebene Menge der Datensätze bestellen (mein Raster wird diese feine tun, aber ich bin sicher, dass es zu langsam sein, wenn ich zu viele Datensätze haben). dass Suche zu sein, ist die Rückkehr eine IList gibt es nicht viel, dass ich direkt gegen diese laufen kann (wieder ich etwas einfach mit Blick auf so sein kann bitte töte mich nicht).

Meine Frage ist, kann jemand erklären, wie Daten zu finden, wie ich oben bin, sortieren und eine Seite von Daten erhalten, wo eine Seite der Größe n?

Gehen bin ich über dieses falsch? Bin ich auch nur annähernd auf dem richtigen Weg zu sein?

War es hilfreich?

Lösung

int currentPage = x
int pageSize = n
recordset = VehicleModel.Find(x => x.Model.StartsWith(SearchText)).Skip(currentPage x PageSize).Take(PageSize);

Dies wird unter der Annahme, current beginnt bei 0.
wenn Ihr current beginnt bei 1, dann wird sie Skip((currentPage - 1) x PageSize)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top