Udostępnij za pośrednictwem


Partycjonowanie danych

Partycjonowanie w LINQ odnosi się do funkcjonowania podzielenie sekwencji wejściowych na dwie sekcje, bez rozmieszczanie elementów, a następnie zwracają jednej z sekcji.

Następująca ilustracja pokazuje wyniki trzech różnych podziału operacji w sekwencji znaków.Pierwsza operacja zwraca pierwsze trzy elementy w sekwencji.Druga operacja pomija pierwsze trzy elementy i zwraca pozostałe elementy.Trzecia operacja pomija dwa pierwsze elementy w kolejności i zwraca kolejne trzy elementy.

Operacje partycjonowania programu LINQ

Metody operator standardowej kwerendy, które partycji sekwencji są wymienione w poniższej sekcji.

Podmioty gospodarcze

Nazwa operatora

Opis

Kwerendy języka C# składni wyrażenia

Visual BasicSkładni wyrażenia kwerendy

Więcej informacji

Pomiń

Pomija elementów do określonego położenia w sekwencji.

Nie dotyczy.

Skip

Enumerable.Skip``1

Queryable.Skip``1

SkipWhile

Pomija elementów na podstawie funkcji predykatu, aż element nie spełnia warunek.

Nie dotyczy.

Skip While

Enumerable.SkipWhile

Queryable.SkipWhile``1

Podjąć

Trwa elementów do określonego położenia w sekwencji.

Nie dotyczy.

Take

Enumerable.Take``1

Queryable.Take``1

TakeWhile

Trwa elementów na podstawie funkcji predykatu, aż element nie spełnia warunek.

Nie dotyczy.

Take While

Enumerable.TakeWhile

Queryable.TakeWhile``1

Przykłady składni wyrażenia kwerendy

Pomiń

Następujący kod w przykładzie wykorzystano Skip w klauzuli Visual Basic pominąć pierwsze cztery ciągi znaków w tablicy ciągów przed zwróceniem pozostałe ciągi znaków w tablicy.

Dim words = {"an", "apple", "a", "day", "keeps", "the", "doctor", "away"}

        Dim query = From word In words 
                    Skip 4

        Dim sb As New System.Text.StringBuilder()
        For Each str As String In query
            sb.AppendLine(str)
        Next 

        ' Display the results.
        MsgBox(sb.ToString())

        ' This code produces the following output: 

        ' keeps 
        ' the 
        ' doctor 
        ' away

SkipWhile

Następujący kod w przykładzie wykorzystano Skip While w klauzuli Visual Basic pominąć ciągi znaków w tablicy podczas pierwszej litery ciąg jest "".Pozostałe ciągi znaków w tablicy są zwracane.

Dim words = {"an", "apple", "a", "day", "keeps", "the", "doctor", "away"}

        Dim query = From word In words 
                    Skip While word.Substring(0, 1) = "a" 

        Dim sb As New System.Text.StringBuilder()
        For Each str As String In query
            sb.AppendLine(str)
        Next 

        ' Display the results.
        MsgBox(sb.ToString())

        ' This code produces the following output: 

        ' day 
        ' keeps 
        ' the 
        ' doctor 
        ' away

Podjąć

Następujący kod w przykładzie wykorzystano Take w klauzuli Visual Basic do zwracania pierwszych dwóch ciągów znaków w tablicy ciągów.

Dim words = {"an", "apple", "a", "day", "keeps", "the", "doctor", "away"}

        Dim query = From word In words 
                    Take 2

        Dim sb As New System.Text.StringBuilder()
        For Each str As String In query
            sb.AppendLine(str)
        Next 

        ' Display the results.
        MsgBox(sb.ToString())

        ' This code produces the following output: 

        ' an 
        ' apple

TakeWhile

Następujący kod w przykładzie wykorzystano Take While w klauzuli Visual Basic do zwracają łańcuchy z tablicy, podczas gdy długość ciągu jest pięciu lub mniej.

Dim words = {"an", "apple", "a", "day", "keeps", "the", "doctor", "away"}

        Dim query = From word In words 
                    Take While word.Length < 6

        Dim sb As New System.Text.StringBuilder()
        For Each str As String In query
            sb.AppendLine(str)
        Next 

        ' Display the results.
        MsgBox(sb.ToString())

        ' This code produces the following output: 

        ' an 
        ' apple 
        ' a 
        ' day 
        ' keeps 
        ' the

Zobacz też

Informacje

Skip — Klauzula (Visual Basic)

Skip While — Klauzula (Visual Basic)

Take — Klauzula (Visual Basic)

Take While — Klauzula (Visual Basic)

System.Linq

Koncepcje

Standardowe operatory zapytań — Omówienie