ParallelEnumerable.SelectMany 方法

定义

将序列的每个元素以并行方式投影到 IEnumerable<T> 并将结果序列合并为一个序列。

重载

SelectMany<TSource,TCollection,TResult>(ParallelQuery<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

将序列的每个元素投影到 IEnumerable<T>,并将结果序列合并为一个序列,并对其中每个元素调用结果选择器函数。

SelectMany<TSource,TCollection,TResult>(ParallelQuery<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

将序列的每个元素投影到 IEnumerable<T>,并将结果序列合并为一个序列,并对其中每个元素调用结果选择器函数。 每个源元素的索引用于该元素的中间投影表。

SelectMany<TSource,TResult>(ParallelQuery<TSource>, Func<TSource,IEnumerable<TResult>>)

将序列的每个元素以并行方式投影到 IEnumerable<T> 并将结果序列合并为一个序列。

SelectMany<TSource,TResult>(ParallelQuery<TSource>, Func<TSource,Int32,IEnumerable<TResult>>)

将序列的每个元素以并行方式投影到 IEnumerable<T> 并将结果序列合并为一个序列。 每个源元素的索引用于该元素的投影表。

SelectMany<TSource,TCollection,TResult>(ParallelQuery<TSource>, Func<TSource,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

将序列的每个元素投影到 IEnumerable<T>,并将结果序列合并为一个序列,并对其中每个元素调用结果选择器函数。

public:
generic <typename TSource, typename TCollection, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::ParallelQuery<TResult> ^ SelectMany(System::Linq::ParallelQuery<TSource> ^ source, Func<TSource, System::Collections::Generic::IEnumerable<TCollection> ^> ^ collectionSelector, Func<TSource, TCollection, TResult> ^ resultSelector);
public static System.Linq.ParallelQuery<TResult> SelectMany<TSource,TCollection,TResult> (this System.Linq.ParallelQuery<TSource> source, Func<TSource,System.Collections.Generic.IEnumerable<TCollection>> collectionSelector, Func<TSource,TCollection,TResult> resultSelector);
static member SelectMany : System.Linq.ParallelQuery<'Source> * Func<'Source, seq<'Collection>> * Func<'Source, 'Collection, 'Result> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function SelectMany(Of TSource, TCollection, TResult) (source As ParallelQuery(Of TSource), collectionSelector As Func(Of TSource, IEnumerable(Of TCollection)), resultSelector As Func(Of TSource, TCollection, TResult)) As ParallelQuery(Of TResult)

类型参数

TSource

collectionSelector 收集的中间元素的类型。

TCollection

source 的元素类型。

TResult

结果序列中的元素的类型。

参数

source
ParallelQuery<TSource>

一个要投影的值序列。

collectionSelector
Func<TSource,IEnumerable<TCollection>>

一个应用于每个源元素的转换函数;函数的第二个参数表示源元素的索引。

resultSelector
Func<TSource,TCollection,TResult>

用于从第一个序列的元素和第二个序列的匹配元素集合中创建结果元素的函数。

返回

ParallelQuery<TResult>

一个序列,其元素是通过以下方法得到的:对基于提供给 collectionSelectorsource 的每个元素调用一对多转换函数 collectionSelector,然后将这些序列元素中的每一个元素及其相应的源元素映射到一个结果元素。

例外

sourceselector 为 null 引用(在 Visual Basic 中为 Nothing)。

查询枚举了多个 Int32.MaxValue 元素。

评估查询期间发生一个或多个异常。

另请参阅

适用于

SelectMany<TSource,TCollection,TResult>(ParallelQuery<TSource>, Func<TSource,Int32,IEnumerable<TCollection>>, Func<TSource,TCollection,TResult>)

将序列的每个元素投影到 IEnumerable<T>,并将结果序列合并为一个序列,并对其中每个元素调用结果选择器函数。 每个源元素的索引用于该元素的中间投影表。

public:
generic <typename TSource, typename TCollection, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::ParallelQuery<TResult> ^ SelectMany(System::Linq::ParallelQuery<TSource> ^ source, Func<TSource, int, System::Collections::Generic::IEnumerable<TCollection> ^> ^ collectionSelector, Func<TSource, TCollection, TResult> ^ resultSelector);
public static System.Linq.ParallelQuery<TResult> SelectMany<TSource,TCollection,TResult> (this System.Linq.ParallelQuery<TSource> source, Func<TSource,int,System.Collections.Generic.IEnumerable<TCollection>> collectionSelector, Func<TSource,TCollection,TResult> resultSelector);
static member SelectMany : System.Linq.ParallelQuery<'Source> * Func<'Source, int, seq<'Collection>> * Func<'Source, 'Collection, 'Result> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function SelectMany(Of TSource, TCollection, TResult) (source As ParallelQuery(Of TSource), collectionSelector As Func(Of TSource, Integer, IEnumerable(Of TCollection)), resultSelector As Func(Of TSource, TCollection, TResult)) As ParallelQuery(Of TResult)

类型参数

TSource

collectionSelector 收集的中间元素的类型。

TCollection

source 的元素类型。

TResult

要返回的元素的类型。

参数

source
ParallelQuery<TSource>

一个要投影的值序列。

collectionSelector
Func<TSource,Int32,IEnumerable<TCollection>>

一个应用于每个源元素的转换函数;函数的第二个参数表示源元素的索引。

resultSelector
Func<TSource,TCollection,TResult>

用于从第一个序列的元素和第二个序列的匹配元素集合中创建结果元素的函数。

返回

ParallelQuery<TResult>

一个序列,其元素是通过以下方法得到的:对基于提供给 collectionSelectorsource 的每个元素调用一对多转换函数 collectionSelector,然后将这些序列元素中的每一个元素及其相应的源元素映射到一个结果元素。

例外

sourceselector 为 null 引用(在 Visual Basic 中为 Nothing)。

查询枚举了多个 Int32.MaxValue 元素。

评估查询期间发生一个或多个异常。

另请参阅

适用于

SelectMany<TSource,TResult>(ParallelQuery<TSource>, Func<TSource,IEnumerable<TResult>>)

将序列的每个元素以并行方式投影到 IEnumerable<T> 并将结果序列合并为一个序列。

public:
generic <typename TSource, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::ParallelQuery<TResult> ^ SelectMany(System::Linq::ParallelQuery<TSource> ^ source, Func<TSource, System::Collections::Generic::IEnumerable<TResult> ^> ^ selector);
public static System.Linq.ParallelQuery<TResult> SelectMany<TSource,TResult> (this System.Linq.ParallelQuery<TSource> source, Func<TSource,System.Collections.Generic.IEnumerable<TResult>> selector);
static member SelectMany : System.Linq.ParallelQuery<'Source> * Func<'Source, seq<'Result>> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function SelectMany(Of TSource, TResult) (source As ParallelQuery(Of TSource), selector As Func(Of TSource, IEnumerable(Of TResult))) As ParallelQuery(Of TResult)

类型参数

TSource

source 的元素类型。

TResult

选择器返回的序列元素的类型。

参数

source
ParallelQuery<TSource>

一个要投影的值序列。

selector
Func<TSource,IEnumerable<TResult>>

应用于每个元素的转换函数。

返回

ParallelQuery<TResult>

一个序列,其元素是对输入序列的每个元素调用一对多转换函数的结果。

例外

sourceselector 为 null 引用(在 Visual Basic 中为 Nothing)。

评估查询期间发生一个或多个异常。

另请参阅

适用于

SelectMany<TSource,TResult>(ParallelQuery<TSource>, Func<TSource,Int32,IEnumerable<TResult>>)

将序列的每个元素以并行方式投影到 IEnumerable<T> 并将结果序列合并为一个序列。 每个源元素的索引用于该元素的投影表。

public:
generic <typename TSource, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static System::Linq::ParallelQuery<TResult> ^ SelectMany(System::Linq::ParallelQuery<TSource> ^ source, Func<TSource, int, System::Collections::Generic::IEnumerable<TResult> ^> ^ selector);
public static System.Linq.ParallelQuery<TResult> SelectMany<TSource,TResult> (this System.Linq.ParallelQuery<TSource> source, Func<TSource,int,System.Collections.Generic.IEnumerable<TResult>> selector);
static member SelectMany : System.Linq.ParallelQuery<'Source> * Func<'Source, int, seq<'Result>> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function SelectMany(Of TSource, TResult) (source As ParallelQuery(Of TSource), selector As Func(Of TSource, Integer, IEnumerable(Of TResult))) As ParallelQuery(Of TResult)

类型参数

TSource

source 的元素类型。

TResult

选择器返回的序列元素的类型。

参数

source
ParallelQuery<TSource>

一个要投影的值序列。

selector
Func<TSource,Int32,IEnumerable<TResult>>

应用于每个元素的转换函数。

返回

ParallelQuery<TResult>

一个序列,其元素是对输入序列的每个元素调用一对多转换函数的结果。

例外

sourceselector 为 null 引用(在 Visual Basic 中为 Nothing)。

查询枚举了多个 Int32.MaxValue 元素。

评估查询期间发生一个或多个异常。

另请参阅

适用于