OrderBy(TSource, TKey) Method (ParallelQuery(TSource), Func(TSource, TKey))

ParallelEnumerable.OrderBy<TSource, TKey> Method (ParallelQuery<TSource>, Func<TSource, TKey>)


Sorts in parallel the elements of a sequence in ascending order according to a key.

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

public static OrderedParallelQuery<TSource> OrderBy<TSource, TKey>(
	this ParallelQuery<TSource> source,
	Func<TSource, TKey> keySelector


Type: System.Linq.ParallelQuery<TSource>

A sequence of values to order.

Type: System.Func<TSourceTKey>

A function to extract a key from an element.

Return Value

Type: System.Linq.OrderedParallelQuery<TSource>

An OrderedParallelQuery{TSource} whose elements are sorted according to a key.

Type Parameters


The type of elements of source.


The type of the key returned by keySelector.

Exception Condition

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


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


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

In contrast to the sequential implementation, this is not a stable sort. To achieve a stable sort, change a query of the form: var ordered = source.Select((e,i) => new { E=e, I=i }).OrderBy((v) => v.e).ThenBy(v => v.i).Select((v) => v.e); 

Universal Windows Platform
Available since 4.5
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1
Return to top
© 2015 Microsoft