ParallelEnumerable.GroupBy<TSource, TKey, TResult> Method (ParallelQuery<TSource>, Func<TSource, TKey>, Func<TKey, IEnumerable<TSource>, TResult>, IEqualityComparer<TKey>)

.NET Framework (current version)
 

Groups in parallel the elements of a sequence according to a specified key selector function and creates a result value from each group and its key. The keys are compared by using a specified comparer.

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

public static ParallelQuery<TResult> GroupBy<TSource, TKey, TResult>(
	this ParallelQuery<TSource> source,
	Func<TSource, TKey> keySelector,
	Func<TKey, IEnumerable<TSource>, TResult> resultSelector,
	IEqualityComparer<TKey> comparer
)

Parameters

source
Type: System.Linq.ParallelQuery<TSource>

A sequence whose elements to group.

keySelector
Type: System.Func<TSource, TKey>

A function to extract the key for each element.

resultSelector
Type: System.Func<TKey, IEnumerable<TSource>, TResult>

A function to create a result value from each group.

comparer
Type: System.Collections.Generic.IEqualityComparer<TKey>

An IEqualityComparer<T> to compare keys.

Return Value

Type: System.Linq.ParallelQuery<TResult>

A sequence of groups.

Type Parameters

TSource

The type of the elements of source.

TKey

The type of the key returned by keySelector.

TResult

The type of the result value returned by resultSelector.

Exception Condition
OperationCanceledException

The query was canceled with the token passed in through WithCancellation.

ArgumentNullException

source or action is a null reference (Nothing in Visual Basic).

AggregateException

One or more exceptions occurred during the evaluation of the query.

Universal Windows Platform
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1
Return to top
Show: