Operadores de partição em LINQ

Divida uma sequência de entrada em duas seções separadas sem reorganizar os elementos da sequência e depois retornar um deles.

Operador Descrição Sintaxe de expressão de consulta C # Sintaxe de expressão de consulta VB
Pular Pula um número especificado de elementos em uma sequência e retorna os restantes Não aplicável Pular
SkipWhile Igual ao de Skip, com a única exceção de que o número de elementos a serem ignorados é especificado por uma condição booleana Não aplicável Pular enquanto
Levar Pegue um determinado número de elementos de uma sequência e pule os restantes Não aplicável Levar
TakeWhile O mesmo que Take, exceto pelo fato de que o número de elementos a serem tomados são especificados por uma condição booleana Não aplicável Demorar um pouco

Exemplo de pular - expressão de consulta

VB

Module Module1

   Sub Main()
   
      Dim words = {"once", "upon", "a", "time", "there", "was", "a", "jungle"}

      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)
         Console.WriteLine(str)
      Next
	  
      Console.ReadLine()
	  
   End Sub
  
End Module

Quando o código acima em VB é compilado e executado, ele produz o seguinte resultado -

there
was
a
jungle

Exemplo de Skip While - Query Expression

VB

Module Module1

   Sub Main()
   
      Dim words = {"once", "upon", "a", "time", "there", "was", "a", "jungle"}

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

      Dim sb As New System.Text.StringBuilder()
	  
      For Each str As String In query
         sb.AppendLine(str)
         Console.WriteLine(str)
      Next 
	  
      Console.ReadLine()
   End Sub
  
End Module

Quando o código acima em VB é compilado e executado, ele produz o seguinte resultado -

once
upon
a
was
a
jungle

Exemplo de Take - Expressão de Consulta

VB

Module Module1

   Sub Main()
   
      Dim words = {"once", "upon", "a", "time", "there", "was", "a", "jungle"}

      Dim query = From word In words 
                  Take 3 

      Dim sb As New System.Text.StringBuilder()
	  
      For Each str As String In query
         sb.AppendLine(str)
         Console.WriteLine(str)
      Next 
	  
      Console.ReadLine()
	  
   End Sub
   
End Module

Quando o código acima em VB é compilado e executado, ele produz o seguinte resultado -

once
upon
a

Exemplo de Take While - Query Expression

VB

Module Module1

   Sub Main()
   
      Dim words = {"once", "upon", "a", "time", "there", "was", "a", "jungle"}

      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)
         Console.WriteLine(str)
      Next
	  
      Console.ReadLine()
	  
   End Sub
   
End Module

Quando o código acima em VB é compilado e executado, ele produz o seguinte resultado -

once
upon
a
time
there
was
a