Queryable.Skip<TSource>(IQueryable<TSource>, Int32) Metod

Definition

Kringgår ett angivet antal element i en sekvens och returnerar sedan de återstående elementen.

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);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")]
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>
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Enumerating collections as IQueryable can require creating new generic types or methods, which requires creating code at runtime. This may not work when AOT compiling.")>]
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)

Typparametrar

TSource

Typen av element sourcei .

Parametrar

source
IQueryable<TSource>

Ett IQueryable<T> att returnera element från.

count
Int32

Antalet element som ska hoppa över innan de återstående elementen returneras.

Returer

IQueryable<TSource>

En IQueryable<T> som innehåller element som inträffar efter det angivna indexet i indatasekvensen.

Attribut

Undantag

source är null.

Exempel

Följande kodexempel visar hur du använder Skip<TSource>(IQueryable<TSource>, Int32) för att hoppa över ett angivet antal element i en sorterad matris och returnera de återstående elementen.

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

Kommentarer

Metoden Skip<TSource>(IQueryable<TSource>, Int32) genererar en MethodCallExpression som representerar att anropa Skip<TSource>(IQueryable<TSource>, Int32) sig själv som en konstruerad generisk metod. Den skickar sedan till MethodCallExpression metoden för den CreateQuery(Expression) som representeras av IQueryProvider egenskapen för parameternProvider.source

Frågebeteendet som uppstår till följd av att ett uttrycksträd som representerar anrop Skip<TSource>(IQueryable<TSource>, Int32) körs beror på implementeringen av source parametertypen. Det förväntade beteendet är att det hoppar över de första count elementen i source och returnerar de återstående elementen.

Gäller för