AsyncEnumerable.GroupJoin Метод

Определение

Перегрузки

Имя Описание
GroupJoin<TOuter,TInner,TKey,TResult>(IAsyncEnumerable<TOuter>, IAsyncEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>,TResult>, IEqualityComparer<TKey>)

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты.

GroupJoin<TOuter,TInner,TKey,TResult>(IAsyncEnumerable<TOuter>, IAsyncEnumerable<TInner>, Func<TOuter,CancellationToken,ValueTask<TKey>>, Func<TInner,CancellationToken,ValueTask<TKey>>, Func<TOuter, IEnumerable<TInner>,CancellationToken,ValueTask<TResult>>, IEqualityComparer<TKey>)

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты.

GroupJoin<TOuter,TInner,TKey>(IAsyncEnumerable<TOuter>, IAsyncEnumerable<TInner>, Func<TOuter,CancellationToken,ValueTask<TKey>>, Func<TInner, CancellationToken,ValueTask<TKey>>, IEqualityComparer<TKey>)

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты. Если comparer параметр не null указан, для сравнения ключей используется средство сравнения равенства по умолчанию.

GroupJoin<TOuter,TInner,TKey>(IAsyncEnumerable<TOuter>, IAsyncEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, IEqualityComparer<TKey>)

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты. Если comparer параметр не null указан, для сравнения ключей используется средство сравнения равенства по умолчанию.

GroupJoin<TOuter,TInner,TKey,TResult>(IAsyncEnumerable<TOuter>, IAsyncEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, Func<TOuter,IEnumerable<TInner>,TResult>, IEqualityComparer<TKey>)

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

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты.

public static System.Collections.Generic.IAsyncEnumerable<TResult> GroupJoin<TOuter,TInner,TKey,TResult>(this System.Collections.Generic.IAsyncEnumerable<TOuter> outer, System.Collections.Generic.IAsyncEnumerable<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 = default);
static member GroupJoin : System.Collections.Generic.IAsyncEnumerable<'Outer> * System.Collections.Generic.IAsyncEnumerable<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * Func<'Outer, seq<'Inner>, 'Result> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Generic.IAsyncEnumerable<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As IAsyncEnumerable(Of TOuter), inner As IAsyncEnumerable(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), TResult), Optional comparer As IEqualityComparer(Of TKey) = Nothing) As IAsyncEnumerable(Of TResult)

Параметры типа

TOuter
TInner
TKey
TResult

Параметры

outer
IAsyncEnumerable<TOuter>

Первая последовательность для соединения.

inner
IAsyncEnumerable<TInner>

Последовательность для соединения с первой последовательностью.

outerKeySelector
Func<TOuter,TKey>

Функция для извлечения ключа соединения из каждого элемента первой последовательности.

innerKeySelector
Func<TInner,TKey>

Функция для извлечения ключа соединения из каждого элемента второй последовательности.

resultSelector
Func<TOuter,IEnumerable<TInner>,TResult>

Функция для создания элемента результата из первой последовательности и коллекции соответствующих элементов из второй последовательности.

comparer
IEqualityComparer<TKey>

Используется IEqualityComparer<T> для хэш-хэша и сравнения ключей.

Возвращаемое значение

IAsyncEnumerable<TResult>

Объект IAsyncEnumerable<T> , содержащий элементы типа TResult , полученные путем выполнения группированного соединения на двух последовательностях.

Исключения

resultSelector равно null.

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

GroupJoin<TOuter,TInner,TKey,TResult>(IAsyncEnumerable<TOuter>, IAsyncEnumerable<TInner>, Func<TOuter,CancellationToken,ValueTask<TKey>>, Func<TInner,CancellationToken,ValueTask<TKey>>, Func<TOuter, IEnumerable<TInner>,CancellationToken,ValueTask<TResult>>, IEqualityComparer<TKey>)

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

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты.

public static System.Collections.Generic.IAsyncEnumerable<TResult> GroupJoin<TOuter,TInner,TKey,TResult>(this System.Collections.Generic.IAsyncEnumerable<TOuter> outer, System.Collections.Generic.IAsyncEnumerable<TInner> inner, Func<TOuter,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<TKey>> outerKeySelector, Func<TInner,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<TKey>> innerKeySelector, Func<TOuter,System.Collections.Generic.IEnumerable<TInner>,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<TResult>> resultSelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer = default);
static member GroupJoin : System.Collections.Generic.IAsyncEnumerable<'Outer> * System.Collections.Generic.IAsyncEnumerable<'Inner> * Func<'Outer, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'Key>> * Func<'Inner, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'Key>> * Func<'Outer, seq<'Inner>, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'Result>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Generic.IAsyncEnumerable<'Result>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey, TResult) (outer As IAsyncEnumerable(Of TOuter), inner As IAsyncEnumerable(Of TInner), outerKeySelector As Func(Of TOuter, CancellationToken, ValueTask(Of TKey)), innerKeySelector As Func(Of TInner, CancellationToken, ValueTask(Of TKey)), resultSelector As Func(Of TOuter, IEnumerable(Of TInner), CancellationToken, ValueTask(Of TResult)), Optional comparer As IEqualityComparer(Of TKey) = Nothing) As IAsyncEnumerable(Of TResult)

Параметры типа

TOuter
TInner
TKey
TResult

Параметры

outer
IAsyncEnumerable<TOuter>

Первая последовательность для соединения.

inner
IAsyncEnumerable<TInner>

Последовательность для соединения с первой последовательностью.

outerKeySelector
Func<TOuter,CancellationToken,ValueTask<TKey>>

Функция для извлечения ключа соединения из каждого элемента первой последовательности.

innerKeySelector
Func<TInner,CancellationToken,ValueTask<TKey>>

Функция для извлечения ключа соединения из каждого элемента второй последовательности.

resultSelector
Func<TOuter,IEnumerable<TInner>,CancellationToken,ValueTask<TResult>>

Функция для создания элемента результата из первой последовательности и коллекции соответствующих элементов из второй последовательности.

comparer
IEqualityComparer<TKey>

Используется IEqualityComparer<T> для хэш-хэша и сравнения ключей.

Возвращаемое значение

IAsyncEnumerable<TResult>

Объект IAsyncEnumerable<T> , содержащий элементы типа TResult , полученные путем выполнения группированного соединения на двух последовательностях.

Исключения

resultSelector равно null.

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

GroupJoin<TOuter,TInner,TKey>(IAsyncEnumerable<TOuter>, IAsyncEnumerable<TInner>, Func<TOuter,CancellationToken,ValueTask<TKey>>, Func<TInner, CancellationToken,ValueTask<TKey>>, IEqualityComparer<TKey>)

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

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты. Если comparer параметр не null указан, для сравнения ключей используется средство сравнения равенства по умолчанию.

public static System.Collections.Generic.IAsyncEnumerable<System.Linq.IGrouping<TOuter,TInner>> GroupJoin<TOuter,TInner,TKey>(this System.Collections.Generic.IAsyncEnumerable<TOuter> outer, System.Collections.Generic.IAsyncEnumerable<TInner> inner, Func<TOuter,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<TKey>> outerKeySelector, Func<TInner,System.Threading.CancellationToken,System.Threading.Tasks.ValueTask<TKey>> innerKeySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer = default);
static member GroupJoin : System.Collections.Generic.IAsyncEnumerable<'Outer> * System.Collections.Generic.IAsyncEnumerable<'Inner> * Func<'Outer, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'Key>> * Func<'Inner, System.Threading.CancellationToken, System.Threading.Tasks.ValueTask<'Key>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Generic.IAsyncEnumerable<System.Linq.IGrouping<'Outer, 'Inner>>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey) (outer As IAsyncEnumerable(Of TOuter), inner As IAsyncEnumerable(Of TInner), outerKeySelector As Func(Of TOuter, CancellationToken, ValueTask(Of TKey)), innerKeySelector As Func(Of TInner, CancellationToken, ValueTask(Of TKey)), Optional comparer As IEqualityComparer(Of TKey) = Nothing) As IAsyncEnumerable(Of IGrouping(Of TOuter, TInner))

Параметры типа

TOuter

Тип элементов первой последовательности.

TInner

Тип элементов второй последовательности.

TKey

Тип ключей, возвращаемых функциями селектора ключей.

Параметры

outer
IAsyncEnumerable<TOuter>

Первая последовательность для соединения.

inner
IAsyncEnumerable<TInner>

Последовательность для соединения с первой последовательностью.

outerKeySelector
Func<TOuter,CancellationToken,ValueTask<TKey>>

Функция для извлечения ключа соединения из каждого элемента первой последовательности.

innerKeySelector
Func<TInner,CancellationToken,ValueTask<TKey>>

Функция для извлечения ключа соединения из каждого элемента второй последовательности.

comparer
IEqualityComparer<TKey>

IEqualityComparer<T> Хэш и сравнение ключей или null использованиеDefault.

Возвращаемое значение

IAsyncEnumerable<IGrouping<TOuter,TInner>>

Объект IAsyncEnumerable<T> , содержащий элементы типа IGrouping<TKey,TElement> , в которых каждая группа содержит внешний элемент в качестве ключа и соответствующие внутренние элементы.

Исключения

innerKeySelector равно null.

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

GroupJoin<TOuter,TInner,TKey>(IAsyncEnumerable<TOuter>, IAsyncEnumerable<TInner>, Func<TOuter,TKey>, Func<TInner,TKey>, IEqualityComparer<TKey>)

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

Сопоставляет элементы двух последовательностей на основе равенства ключей и группирует результаты. Если comparer параметр не null указан, для сравнения ключей используется средство сравнения равенства по умолчанию.

public static System.Collections.Generic.IAsyncEnumerable<System.Linq.IGrouping<TOuter,TInner>> GroupJoin<TOuter,TInner,TKey>(this System.Collections.Generic.IAsyncEnumerable<TOuter> outer, System.Collections.Generic.IAsyncEnumerable<TInner> inner, Func<TOuter,TKey> outerKeySelector, Func<TInner,TKey> innerKeySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer = default);
static member GroupJoin : System.Collections.Generic.IAsyncEnumerable<'Outer> * System.Collections.Generic.IAsyncEnumerable<'Inner> * Func<'Outer, 'Key> * Func<'Inner, 'Key> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Collections.Generic.IAsyncEnumerable<System.Linq.IGrouping<'Outer, 'Inner>>
<Extension()>
Public Function GroupJoin(Of TOuter, TInner, TKey) (outer As IAsyncEnumerable(Of TOuter), inner As IAsyncEnumerable(Of TInner), outerKeySelector As Func(Of TOuter, TKey), innerKeySelector As Func(Of TInner, TKey), Optional comparer As IEqualityComparer(Of TKey) = Nothing) As IAsyncEnumerable(Of IGrouping(Of TOuter, TInner))

Параметры типа

TOuter

Тип элементов первой последовательности.

TInner

Тип элементов второй последовательности.

TKey

Тип ключей, возвращаемых функциями селектора ключей.

Параметры

outer
IAsyncEnumerable<TOuter>

Первая последовательность для соединения.

inner
IAsyncEnumerable<TInner>

Последовательность для соединения с первой последовательностью.

outerKeySelector
Func<TOuter,TKey>

Функция для извлечения ключа соединения из каждого элемента первой последовательности.

innerKeySelector
Func<TInner,TKey>

Функция для извлечения ключа соединения из каждого элемента второй последовательности.

comparer
IEqualityComparer<TKey>

IEqualityComparer<T> Хэш и сравнение ключей или null использованиеDefault.

Возвращаемое значение

IAsyncEnumerable<IGrouping<TOuter,TInner>>

Объект IAsyncEnumerable<T> , содержащий элементы типа IGrouping<TKey,TElement> , в которых каждая группа содержит внешний элемент в качестве ключа и соответствующие внутренние элементы.

Исключения

innerKeySelector равно null.

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