| 

.NET C# Java Javascript Exception

5
Mit SQL-Server kann ich schreiben:


SELECT ID, Name, ROW_NUMBER() OVER(ORDER BY Name) AS Index
FROM Personen
WHERE Index > 10 and Index <= 20

um die "zweite Seite" zu je 10 Stück zu erhalten. Wie macht man das mit LINQ? Soll ich einfach in der foreach-Schleife die ersten 10 Einträge ingnorieren?
14.07.2009
golo 173 1 5
3
http://msdn.microsoft.com/en-us/library/ms186734.aspx könnte noch hilfreich sein.
golo 14.07.2009
4 Antworten
13
(...).Skip(10).Take(10) erfüllt die Abfrage für dein Beispiel.
26.07.2009
gfoidl 9,1k 3 5
6
Die Skip()-Methode überspringt die Anzahl der angegebenen Datensätze.
Die Take()-Methode holt die Anzahl der angegebenen Datensätze ab der Stelle wo Skip aufhört.

Skip(0).Take(10) ist deine Seite 1, du fängst bei Datensatz 0 an (Skip) und willst 10 Datensätze erhalten (Take)

Skip(10).Take(10) ist deine Seite 2, du fängst bei Datensatz Nr. 10 an und lässt dir die 10 folgenden Datensätze ausgeben.

Seite 3: Skip(20).Take(10)
Seite 4: Skip(30).Take(10)
usw.
17.09.2009
schulz3000 330 1 5
3
Das geht mit den Methoden **Skip** und **Take**.
25.07.2009
gfoidl 9,1k 3 5
-3
Hm ok, `Index > 10` geht aber wie sag ich denn `Index <= 20`?
25.07.2009
golo 173 1 5
1
Rückfragen bitte immer als Kommentar zu den Antworten :)
Blauesocke 26.10.2009

Stelle deine .net-Frage jetzt!