Operadores de partición en LINQ
Divida una secuencia de entrada en dos secciones separadas sin reorganizar los elementos de la secuencia y luego devolver uno de ellos.
Operador | Descripción | Sintaxis de expresión de consulta de C # | Sintaxis de expresión de consulta de VB |
---|---|---|---|
Omitir | Omite un número específico de elementos dentro de una secuencia y devuelve los restantes | No aplica | Omitir |
SkipWhile | Igual que el de Skip con la única excepción de que el número de elementos para omitir se especifica mediante una condición booleana | No aplica | Saltar mientras |
Tomar | Tome un número específico de elementos de una secuencia y omita los restantes | No aplica | Tomar |
TakeWhile | Igual que el de Take, excepto el hecho de que el número de elementos a tomar se especifica mediante una condición booleana | No aplica | Tómese un tiempo |
Ejemplo de omisión: expresión 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
Cuando se compila y ejecuta el código anterior en VB, produce el siguiente resultado:
there
was
a
jungle
Ejemplo de omitir mientras: expresión de consulta
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
Cuando se compila y ejecuta el código anterior en VB, produce el siguiente resultado:
once
upon
a
was
a
jungle
Ejemplo de toma: expresión 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
Cuando se compila y ejecuta el código anterior en VB, produce el siguiente resultado:
once
upon
a
Ejemplo de Take While - Expresión de consulta
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
Cuando se compila y ejecuta el código anterior en VB, produce el siguiente resultado:
once
upon
a
time
there
was
a