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.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<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<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<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<T> , содержащий элементы типа IGrouping<TKey,TElement> , в которых каждая группа содержит внешний элемент в качестве ключа и соответствующие внутренние элементы.
Исключения
innerKeySelector равно null.