Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Enumerable.GroupBy<TSource, TKey> (Método) (IEnumerable<TSource>, Func<TSource, TKey>)

 

Agrupa los elementos de una secuencia según una función del selector de claves especificada.

Espacio de nombres:   System.Linq
Ensamblado:  System.Core (en System.Core.dll)

public static IEnumerable<IGrouping<TKey, TSource>> GroupBy<TSource, TKey>(
	this IEnumerable<TSource> source,
	Func<TSource, TKey> keySelector
)

Parámetros

source
Type: System.Collections.Generic.IEnumerable<TSource>

Una IEnumerable<T> cuyos elementos desea agrupar.

keySelector
Type: System.Func<TSource, TKey>

Función para extraer la clave de cada elemento.

Valor devuelto

Type: System.Collections.Generic.IEnumerable<IGrouping<TKey, TSource>>

Un IEnumerable<IGrouping<TKey, TSource>> en C# o IEnumerable(Of IGrouping(Of TKey, TSource)) en Visual Basic donde cada IGrouping<TKey, TElement> objeto contiene una secuencia de objetos y una clave.

Parámetros de tipo

TSource

Tipo de los elementos de source.

TKey

Tipo de la clave devuelta por keySelector.

Exception Condition
ArgumentNullException

El valor de source o keySelector es null.

Este método se implementa mediante la ejecución diferida. El valor devuelto inmediato es un objeto que almacena toda la información necesaria para realizar la acción. La consulta representada por este método no se ejecuta hasta que se enumera el objeto llamando a su GetEnumerator método directamente o mediante foreach en Visual C# o For Each en Visual Basic.

El GroupBy<TSource, TKey>(IEnumerable<TSource>, Func<TSource, TKey>) método devuelve una colección de IGrouping<TKey, TElement> objetos, uno para cada clave distinto que se encontró. Un IGrouping<TKey, TElement> es un IEnumerable<T> que también tiene una clave asociada a sus elementos.

El IGrouping<TKey, TElement> objetos se proporcionan en un orden según el orden de los elementos de source que produjo la primera clave de cada IGrouping<TKey, TElement>. Elementos de una agrupación se proporcionan en el orden en que aparecen en source.

El comparador de igualdad predeterminado Default se utiliza para comparar claves.

En la sintaxis de expresión de consulta, un group by (Visual C#) o Group By Into (Visual Basic) cláusula se convierte en una invocación de GroupBy. Para obtener más información y ejemplos de uso, consulte group (Cláusula, Referencia de C#) y Group By (Cláusula, Visual Basic).

Universal Windows Platform
Disponible desde 8
.NET Framework
Disponible desde 3.5
Portable Class Library
Compatible con: portable .NET platforms
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Windows Phone
Disponible desde 8.1
Volver al principio
Mostrar: