ParallelEnumerable::SelectMany<TSource, TCollection, TResult> Method (ParallelQuery<TSource>^, Func<TSource, Int32, IEnumerable<TCollection>^>^, Func<TSource, TCollection, TResult>^)
Projects each element of a sequence to an IEnumerable<T>, flattens the resulting sequences into one sequence, and invokes a result selector function on each element therein. The index of each source element is used in the intermediate projected form of that element.
Assembly: System.Core (in System.Core.dll)
public: generic<typename TSource, typename TCollection, typename TResult> [ExtensionAttribute] static ParallelQuery<TResult>^ SelectMany( ParallelQuery<TSource>^ source, Func<TSource, int, IEnumerable<TCollection>^>^ collectionSelector, Func<TSource, TCollection, TResult>^ resultSelector )
Parameters
- source
-
Type:
System.Linq::ParallelQuery<TSource>^
A sequence of values to project.
- collectionSelector
-
Type:
System::Func<TSource, Int32, IEnumerable<TCollection>^>^
A transform function to apply to each source element; the second parameter of the function represents the index of the source element.
- resultSelector
-
Type:
System::Func<TSource, TCollection, TResult>^
A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence.
Return Value
Type: System.Linq::ParallelQuery<TResult>^A sequence whose elements are the result of invoking the one-to-many transform function collectionSelector on each element of source based on the index supplied to collectionSelector, and then mapping each of those sequence elements and their corresponding source element to a result element.
Type Parameters
- TSource
The type of the intermediate elements collected by collectionSelector.
- TCollection
The type of elements of source.
- TResult
The type of elements to return.
| Exception | Condition |
|---|---|
| ArgumentNullException | source or selector is a null reference (Nothing in Visual Basic). |
| OperationCanceledException | The query was canceled with the token passed in through WithCancellation. |
| OverflowException | More than MaxValue elements are enumerated by the query. |
| AggregateException | One or more exceptions occurred during the evaluation of the query. |
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Windows Phone
Available since 8.1