Поделиться через


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>)

Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs

Проецирует каждый элемент последовательности в объект 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>

Последовательность, элементы которой получены в результате вызова функции преобразования "один ко многим" collectionSelector для каждого элемента последовательности source на основании переданного в collectionSelector индекса и последующего сопоставления каждого элемента такой промежуточной последовательности и соответствующего ему исходного элемента с полученным элементом.

Исключения

Параметр source или selector — это пустая ссылка (Nothing в Visual Basic).

Запрос отменен с использованием маркера, переданного через WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken).

Запрос перечисляет больше элементов Int32.MaxValue .

При оценке запроса получено одно или несколько исключений.

См. также раздел

Применяется к

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

Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs

Проецирует каждый элемент последовательности в объект 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>

Последовательность, элементы которой получены в результате вызова функции преобразования "один ко многим" collectionSelector для каждого элемента последовательности source на основании переданного в collectionSelector индекса и последующего сопоставления каждого элемента такой промежуточной последовательности и соответствующего ему исходного элемента с полученным элементом.

Исключения

Параметр source или selector — это пустая ссылка (Nothing в Visual Basic).

Запрос отменен с использованием маркера, переданного через WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken).

Запрос перечисляет больше элементов Int32.MaxValue .

При оценке запроса получено одно или несколько исключений.

См. также раздел

Применяется к

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

Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs

Проецирует параллельно каждый элемент последовательности в объект 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>

Последовательность, элементы которой получены в результате вызова функции преобразования "один ко многим" для каждого элемента входной последовательности.

Исключения

Параметр source или selector — это пустая ссылка (Nothing в Visual Basic).

Запрос отменен с использованием маркера, переданного через WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken).

При оценке запроса получено одно или несколько исключений.

См. также раздел

Применяется к

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

Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs
Исходный код:
ParallelEnumerable.cs

Параллельно проецирует каждый элемент последовательности в объект 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>

Последовательность, элементы которой получены в результате вызова функции преобразования "один ко многим" для каждого элемента входной последовательности.

Исключения

Параметр source или selector — это пустая ссылка (Nothing в Visual Basic).

Запрос отменен с использованием маркера, переданного через WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken).

Запрос перечисляет больше элементов Int32.MaxValue .

При оценке запроса получено одно или несколько исключений.

См. также раздел

Применяется к