ParallelEnumerable.GroupJoin Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Сопоставляет параллельно элементы двух последовательностей на основе равенства ключей и группирует результаты.
Перегрузки
GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Внимание!
The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.
Эту перегрузку GroupJoin никогда не следует вызывать. Этот метод помечается как устаревший и всегда вызывается NotSupportedException при вызове.
public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
static System::Linq::ParallelQuery<TResult> ^ GroupJoin(System::Linq::ParallelQuery<TOuter> ^ outer, System::Collections::Generic::IEnumerable<TInner> ^ inner, Func<TOuter, TKey> ^ outerKeySelector, Func<TInner, TKey> ^ innerKeySelector, Func<TOuter, System::Collections::Generic::IEnumerable<TInner> ^, TResult> ^ resultSelector);
[System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")]
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult>(this System.Linq.ParallelQuery<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector);
[<System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")>]
static member GroupJoin : System.Linq.ParallelQuery<'Outer> * seq<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As ParallelQuery(Of TOuter), inner As IEnumerable(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult)) As ParallelQuery(Of TResult)
Параметры типа
- TOuter
Этот параметр типа не используется.
- TInner
Этот параметр типа не используется.
- TKey
Этот параметр типа не используется.
- TResult
Этот параметр типа не используется.
Параметры
- outer
- ParallelQuery<TOuter>
Этот параметр не используется.
- inner
- IEnumerable<TInner>
Этот параметр не используется.
- outerKeySelector
- Func<TOuter,TKey>
Этот параметр не используется.
- innerKeySelector
- Func<TInner,TKey>
Этот параметр не используется.
- resultSelector
- Func<TOuter,IEnumerable<TInner>,TResult>
Этот параметр не используется.
Возвращаемое значение
Эта перегрузка NotSupportedExceptionвсегда вызывает исключение.
- Атрибуты
Исключения
Исключение, возникающее при вызове этого метода.
Комментарии
Эта перегрузка существует для запрета использования GroupJoin с левым источником данных типа ParallelQuery<TSource> и правым источником данных типа IEnumerable<T>. В противном случае оператор GroupJoin, как представляется, привязывается к параллельной реализации, но в действительности привязывается к последовательной реализации.
См. также раздел
Применяется к
GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, ParallelQuery<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Сопоставляет параллельно элементы двух последовательностей на основе равенства ключей и группирует результаты. Средство сравнения равенства по умолчанию используется для сравнения ключей.
public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
static System::Linq::ParallelQuery<TResult> ^ GroupJoin(System::Linq::ParallelQuery<TOuter> ^ outer, System::Linq::ParallelQuery<TInner> ^ inner, Func<TOuter, TKey> ^ outerKeySelector, Func<TInner, TKey> ^ innerKeySelector, Func<TOuter, System::Collections::Generic::IEnumerable<TInner> ^, TResult> ^ resultSelector);
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult>(this System.Linq.ParallelQuery<TOuter> outer, System.Linq.ParallelQuery<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector);
static member GroupJoin : System.Linq.ParallelQuery<'Outer> * System.Linq.ParallelQuery<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As ParallelQuery(Of TOuter), inner As ParallelQuery(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult)) As ParallelQuery(Of TResult)
Параметры типа
- TOuter
Тип элементов первой последовательности.
- TInner
Тип элементов второй последовательности.
- TKey
Тип ключей, возвращаемых функциями селектора ключей.
- TResult
Тип элементов результата.
Параметры
- outer
- ParallelQuery<TOuter>
Первая последовательность для соединения.
- inner
- ParallelQuery<TInner>
Последовательность для соединения с первой последовательностью.
- outerKeySelector
- Func<TOuter,TKey>
Функция для извлечения ключа соединения из каждого элемента первой последовательности.
- innerKeySelector
- Func<TInner,TKey>
Функция для извлечения ключа соединения из каждого элемента второй последовательности.
- resultSelector
- Func<TOuter,IEnumerable<TInner>,TResult>
Функция для создания элемента результата из первой последовательности и коллекции соответствующих элементов из второй последовательности.
Возвращаемое значение
Последовательность, которая содержит элементы типа TResult , полученные путем выполнения сгруппированного соединения на двух последовательностях.
Исключения
Запрос был отменен с помощью маркера, переданного через WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken).
outer или inner или outerKeySelector или innerKeySelector или resultSelector /null (Nothing в Visual Basic).
Во время оценки запроса произошло одно или несколько исключений.
См. также раздел
Применяется к
GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, IEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Внимание!
The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.
Эту перегрузку GroupJoin никогда не следует вызывать. Этот метод помечается как устаревший и всегда вызывается NotSupportedException при вызове.
public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
static System::Linq::ParallelQuery<TResult> ^ GroupJoin(System::Linq::ParallelQuery<TOuter> ^ outer, System::Collections::Generic::IEnumerable<TInner> ^ inner, Func<TOuter, TKey> ^ outerKeySelector, Func<TInner, TKey> ^ innerKeySelector, Func<TOuter, System::Collections::Generic::IEnumerable<TInner> ^, TResult> ^ resultSelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
[System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")]
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult>(this System.Linq.ParallelQuery<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector, System.Collections.Generic.IEqualityComparer<TKey> comparer);
[System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")]
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult>(this System.Linq.ParallelQuery<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
[<System.Obsolete("The second data source of a binary operator must be of type System.Linq.ParallelQuery<T> rather than System.Collections.Generic.IEnumerable<T>. To fix this problem, use the AsParallel() extension method to convert the right data source to System.Linq.ParallelQuery<T>.")>]
static member GroupJoin : System.Linq.ParallelQuery<'Outer> * seq<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As ParallelQuery(Of TOuter), inner As IEnumerable(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult), comparer As IEqualityComparer(Of TKey)) As ParallelQuery(Of TResult)
Параметры типа
- TOuter
Этот параметр типа не используется.
- TInner
Этот параметр типа не используется.
- TKey
Этот параметр типа не используется.
- TResult
Этот параметр типа не используется.
Параметры
- outer
- ParallelQuery<TOuter>
Этот параметр не используется.
- inner
- IEnumerable<TInner>
Этот параметр не используется.
- outerKeySelector
- Func<TOuter,TKey>
Этот параметр не используется.
- innerKeySelector
- Func<TInner,TKey>
Этот параметр не используется.
- resultSelector
- Func<TOuter,IEnumerable<TInner>,TResult>
Этот параметр не используется.
- comparer
- IEqualityComparer<TKey>
Этот параметр не используется.
Возвращаемое значение
Эта перегрузка NotSupportedExceptionвсегда вызывает исключение.
- Атрибуты
Исключения
Исключение, возникающее при вызове этого метода.
Комментарии
Эта перегрузка существует для запрета использования GroupJoin с левым источником данных типа ParallelQuery<TSource> и правым источником данных типа IEnumerable<T>. В противном случае оператор GroupJoin, как представляется, привязывается к параллельной реализации, но в действительности привязывается к последовательной реализации.
См. также раздел
Применяется к
GroupJoin<TOuter,TInner,TKey,TResult>(ParallelQuery<TOuter>, ParallelQuery<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>, TResult>, IEqualityComparer<TKey>)
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
- Исходный код:
- ParallelEnumerable.cs
Сопоставляет параллельно элементы двух последовательностей на основе равенства ключей и группирует результаты. Для сравнения ключей используется указанный IEqualityComparer<T>.
public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
static System::Linq::ParallelQuery<TResult> ^ GroupJoin(System::Linq::ParallelQuery<TOuter> ^ outer, System::Linq::ParallelQuery<TInner> ^ inner, Func<TOuter, TKey> ^ outerKeySelector, Func<TInner, TKey> ^ innerKeySelector, Func<TOuter, System::Collections::Generic::IEnumerable<TInner> ^, TResult> ^ resultSelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult>(this System.Linq.ParallelQuery<TOuter> outer, System.Linq.ParallelQuery<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector, System.Collections.Generic.IEqualityComparer<TKey> comparer);
public static System.Linq.ParallelQuery<TResult> GroupJoin<TOuter,TInner,TKey,TResult>(this System.Linq.ParallelQuery<TOuter> outer, System.Linq.ParallelQuery<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,TResult> resultSelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member GroupJoin : System.Linq.ParallelQuery<'Outer> * System.Linq.ParallelQuery<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Linq.ParallelQuery<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As ParallelQuery(Of TOuter), inner As ParallelQuery(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult), comparer As IEqualityComparer(Of TKey)) As ParallelQuery(Of TResult)
Параметры типа
- TOuter
Тип элементов первой последовательности.
- TInner
Тип элементов второй последовательности.
- TKey
Тип ключей, возвращаемых функциями селектора ключей.
- TResult
Тип элементов результата.
Параметры
- outer
- ParallelQuery<TOuter>
Первая последовательность для соединения.
- inner
- ParallelQuery<TInner>
Последовательность для соединения с первой последовательностью.
- outerKeySelector
- Func<TOuter,TKey>
Функция для извлечения ключа соединения из каждого элемента первой последовательности.
- innerKeySelector
- Func<TInner,TKey>
Функция для извлечения ключа соединения из каждого элемента второй последовательности.
- resultSelector
- Func<TOuter,IEnumerable<TInner>,TResult>
Функция для создания элемента результата из первой последовательности и коллекции соответствующих элементов из второй последовательности.
- comparer
- IEqualityComparer<TKey>
IEqualityComparer<T> хэш и сравнить ключи.
Возвращаемое значение
Последовательность, которая содержит элементы типа TResult , полученные путем выполнения сгруппированного соединения на двух последовательностях.
Исключения
Запрос был отменен с помощью маркера, переданного через WithCancellation<TSource>(ParallelQuery<TSource>, CancellationToken).
outer или inner или outerKeySelector или innerKeySelector или resultSelector /null (Nothing в Visual Basic).
Во время оценки запроса произошло одно или несколько исключений.