Wenn Sie Entity Framework verwenden verwenden Take and Skip
Erweiterungsmethode mit Hilfe von OrderBy
wie
context.YourTable.OrderByDescending(sort).Skip(skipRows).Take(pageSize).ToList();
Wenn Sie verwenden dann verwenden OFFSET and FETCH
SQL-Abfragen mit Hilfe von order by
wie
SELECT * FROM YourTable order by SomeRow desc
OFFSET @skipRows -- skip 10 rows
FETCH NEXT @pageSize ROWS ONLY;
Strategie
- Übergeben Sie die PageSize an die serverseitige Funktion oder API als pageSize (zB 10)
Übergeben Sie die skipRows an die Serverseite. So nehme an, Sie sind auf Seite 3 dann
skipRows = pagesize * (Seite -1)
Also, wenn Sie sind auf Seite 3 dann skipRows Wert (10 * 2 = 20)
werden und somit von Server-Seite werden Sie das bekommen nächste 10 rows
nach dem Überspringen 20 rows
.
EDIT 1: Wie der UI-Grid
useExternalPagination
wahr und gridApi.pagination.on.paginationChanged
Set Setup verwenden, um die Seite Änderungen zu verfolgen und bekommt die Daten
Sie diese beziehen plnkr
Danke für die Information. Ich weiß, wie man im Enitity Framework vorgeht. Meine Frage ist, wie man es in UI-Grid macht. Wie man es im UI-GRID gegen die Seite aufruft Es wäre großartig, wenn Sie oder jemand Plunker zur Verfügung stellen könnten. – user6389905
@ user6389905 aktualisiert die Antwort. –
Ashish, der von Ihnen bereitgestellte Plünderer ruft alle Daten vom Server ab und schneidet dann auf der Client-Seite. Ich möchte eigentlich ein Szenario, in dem nur ausgewählte Daten vom Server zum UI-GRID abgerufen werden. – user6389905