Informações
O tópico solicitado está sendo mostrado abaixo. No entanto, este tópico não está incluído nesta biblioteca.

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

Agrupa os elementos de uma seqüência de acordo com uma função de seleção de chave especificada.

Namespace:  System.Linq
Assembly:  System.Core (em System.Core.dll)

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

Parâmetros de tipo

TSource

O tipo dos elementos de source.

TKey

O tipo de chave retornada por keySelector.

Parâmetros

source
Tipo: System.Collections.Generic.IEnumerable<TSource>
Elementos de IEnumerable<T> a chave de clustering.
keySelector
Tipo: System.Func<TSource, TKey>
Uma função para extrair a chave para cada elemento.

Valor de retorno

Tipo: System.Collections.Generic.IEnumerable<IGrouping<TKey, TSource>>
IEnumerable<IGrouping<TKey, TSource>> em C# ou IEnumerable(Of IGrouping(Of TKey, TSource)) em Visual Basic onde cada objeto de IGrouping<TKey, TElement> contém uma sequência de objetos e uma chave.

Observação de uso

No Visual Basic e no C#, você pode chamar esse método como um método de instância em qualquer objeto do tipo IEnumerable<TSource>. Quando você usar a sintaxe de método de instância para chamar esse método, omita o primeiro parâmetro. Para obter mais informações, consulte Métodos de extensão (Visual Basic) ou Métodos de extensão (Guia de Programação em C#).

ExceçãoCondição
ArgumentNullException

source ou keySelector é null.

Esse método é implementado usando a execução diferida. O valor de retorno imediato é um objeto que armazena todas as informações necessárias para executar a ação. A consulta representada por esse método não é executada até que o objeto seja enumerado chamando o método de GetEnumerator diretamente ou usando foreach em Visual C# ou For Each em Visual Basic.

O método de GroupBy<TSource, TKey>(IEnumerable<TSource>, Func<TSource, TKey>) retorna uma coleção de objetos IGrouping<TKey, TElement> , um para cada chaves de distinção que foi encontrada. IGrouping<TKey, TElement> é IEnumerable<T> que também tem uma chave associada com seus elementos.

Os objetos de IGrouping<TKey, TElement> são rendidos em uma ordem com base na ordem dos elementos em source que gerou a primeira chave de cada IGrouping<TKey, TElement>. Os elementos em um agrupamento são rendidos na ordem em que aparecem em source.

O comparador padrão Default de igualdade é usado para comparar chaves.

Na sintaxe da expressão de consulta, uma cláusula de group by (Visual C#) ou de Group By Into (Visual Basic) converte a uma invocação de GroupBy. Para obter mais informações e exemplos de uso, consulte Cláusula group (Referência de C#) e Cláusula Group By (Visual Basic).

.NET Framework

Com suporte em: 4.5.2, 4.5.1, 4.5, 4, 3.5

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Biblioteca de Classes Portátil

Com suporte em: Biblioteca de Classes Portátil

.NET para aplicativos da Windows Store

Com suporte em: Windows 8

.NET para aplicativos do Windows Phone

Com suporte em: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Função Server Core sem suporte), Windows Server 2008 R2 (Função Server Core com suporte com o SP1 ou posterior, Itanium sem suporte)

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos do sistema do .NET Framework.

Contribuições da comunidade

Mostrar:
© 2015 Microsoft