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.
Assembly: System.Core (in System.Core.dll)
public: generic<typename TSource, typename TKey> [ExtensionAttribute] static OrderedParallelQuery<TSource>^ OrderBy( ParallelQuery<TSource>^ source, Func<TSource, TKey>^ keySelector )
Parameters
- source
-
Type:
System.Linq::ParallelQuery<TSource>^
A sequence of values to order.
- keySelector
-
Type:
System::Func<TSource, TKey>^
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
- TSource
The type of elements of source.
- TKey
The type of the key returned by keySelector.
| Exception | Condition |
|---|---|
| ArgumentNullException | source or keySelector is a null reference (Nothing in Visual Basic). |
| OperationCanceledException | The query was canceled with the token passed in through WithCancellation. |
| AggregateException | 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);
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1