Данная статья переведена с помощью средств машинного перевода. Чтобы просмотреть ее на английском языке, установите флажок Английский. Вы также можете просматривать английский текст во всплывающем окне, наводя указатель мыши на переведенный текст.
Перевод
Английский

Метод Enumerable.GroupBy<TSource, TKey>(IEnumerable<TSource>, Func<TSource, TKey>)

 

Опубликовано: Октябрь 2016

Группирует элементы последовательности в соответствии с заданной функцией селектора ключа.

Пространство имен:   System.Linq
Сборка:  System.Core (в System.Core.dll)

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

Параметры

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

IEnumerable<T> Элементы которой требуется сгруппировать.

keySelector
Type: System.Func<TSource, TKey>

Функция, извлекающая ключ для каждого элемента.

Возвращаемое значение

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

IEnumerable<IGrouping<TKey, TSource>> В C# или IEnumerable(Of IGrouping(Of TKey, TSource)) в Visual Basic где каждый IGrouping<TKey, TElement> объект содержит последовательность объектов и ключ.

Параметры типа

TSource

Тип элементов source.

TKey

Тип ключа, возвращаемого функцией keySelector.

Exception Condition
ArgumentNullException

Параметр source или keySelector имеет значение null.

Этот метод реализуется с использованием отложенного выполнения. Немедленно возвращаемое значение — это объект, который хранит все сведения, необходимые для выполнения действия. Запрос, представленный данным методом не выполняется до перечисления объекта путем непосредственного вызова его GetEnumerator метода или с помощью foreach в Visual C# или For Each в Visual Basic.

GroupBy<TSource, TKey>(IEnumerable<TSource>, Func<TSource, TKey>) Метод возвращает коллекцию IGrouping<TKey, TElement> по одному для каждого из различных разделов, обнаружена. IGrouping<TKey, TElement>IEnumerable<T> Также имеет ключ, связанный с его элементов.

IGrouping<TKey, TElement> Объекты располагаются в порядке на основе порядка элементов в source созданных первый ключ каждого IGrouping<TKey, TElement>. Элементы внутри группы располагаются в порядке их появления в source.

Компаратор проверки на равенство по умолчанию Default используется для сравнения ключей.

В синтаксисе выражений запросов group by (Visual C#) или Group By Into (Visual Basic) преобразует предложение для вызова GroupBy. Дополнительные сведения и примеры использования см. в разделе Предложение group (Справочник по C#) и Предложение Group By (Visual Basic).

Универсальная платформа Windows
Доступно с 8
.NET Framework
Доступно с 3.5
Переносимая библиотека классов
Поддерживается в: переносимые платформы .NET
Silverlight
Доступно с 2.0
Windows Phone Silverlight
Доступно с 7.0
Windows Phone
Доступно с 8.1
Вернуться в начало
Показ: