Queryable.Skip<TSource>(IQueryable<TSource>, Int32) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Obchází zadaný počet prvků v sekvenci a vrátí zbývající prvky.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TSource> ^ Skip(System::Linq::IQueryable<TSource> ^ source, int count);
public static System.Linq.IQueryable<TSource> Skip<TSource> (this System.Linq.IQueryable<TSource> source, int count);
static member Skip : System.Linq.IQueryable<'Source> * int -> System.Linq.IQueryable<'Source>
<Extension()>
Public Function Skip(Of TSource) (source As IQueryable(Of TSource), count As Integer) As IQueryable(Of TSource)
Parametry typu
- TSource
Typ elementů .source
Parametry
- source
- IQueryable<TSource>
An IQueryable<T> , ze které se mají vrátit prvky.
- count
- Int32
Počet prvků, které se mají přeskočit před vrácením zbývajících prvků.
Návraty
Obsahuje IQueryable<T> prvky, které se vyskytují po zadaném indexu ve vstupní sekvenci.
Výjimky
source
je null
.
Příklady
Následující příklad kódu ukazuje, jak použít Skip<TSource>(IQueryable<TSource>, Int32) k přeskočení zadaného počtu prvků v seřazené matici a vrácení zbývajících elementů.
int[] grades = { 59, 82, 70, 56, 92, 98, 85 };
// Sort the grades in descending order and
// get all except the first three.
IEnumerable<int> lowerGrades =
grades.AsQueryable().OrderByDescending(g => g).Skip(3);
Console.WriteLine("All grades except the top three are:");
foreach (int grade in lowerGrades)
Console.WriteLine(grade);
/*
This code produces the following output:
All grades except the top three are:
82
70
59
56
*/
Dim grades() As Integer = {59, 82, 70, 56, 92, 98, 85}
' Sort the grades in descending order and
' get all except the first three.
Dim lowerGrades = grades.AsQueryable() _
.OrderByDescending(Function(g) g) _
.Skip(3)
Dim output As New System.Text.StringBuilder
output.AppendLine("All grades except the top three are:")
For Each grade As Integer In lowerGrades
output.AppendLine(grade)
Next
' Display the output.
MsgBox(output.ToString())
' This code produces the following output:
' All grades except the top three are:
' 82
' 70
' 59
' 56
Poznámky
Metoda Skip<TSource>(IQueryable<TSource>, Int32) vygeneruje metodu MethodCallExpression , která představuje volání Skip<TSource>(IQueryable<TSource>, Int32) sebe sama jako konstruovanou obecnou metodu. Pak předá MethodCallExpression metodu IQueryProviderCreateQuery(Expression) reprezentované Provider vlastností parametru source
.
Chování dotazu, ke kterému dochází v důsledku spuštění stromu výrazů, který představuje volání Skip<TSource>(IQueryable<TSource>, Int32) , závisí na implementaci typu parametru source
. Očekávané chování je, že přeskočí první count
prvky v source
a vrátí zbývající prvky.