Прочитать на английском

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


Enumerable.UnionBy Метод

Определение

Перегрузки

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>)

Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключа.

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключа.

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>)

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

Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключа.

public static System.Collections.Generic.IEnumerable<TSource> UnionBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> first, System.Collections.Generic.IEnumerable<TSource> second, Func<TSource,TKey> keySelector);

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

TSource

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

TKey

Тип ключа для идентификации элементов.

Параметры

first
IEnumerable<TSource>

Объект IEnumerable<T>, различающиеся элементы которого образуют первое множество для объединения.

second
IEnumerable<TSource>

Объект IEnumerable<T>, различающиеся элементы которого образуют второе множество для объединения.

keySelector
Func<TSource,TKey>

Функция, извлекающая ключ для каждого элемента.

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

IEnumerable<TSource>

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

Исключения

Параметр first или second имеет значение null.

Комментарии

Этот метод реализуется с помощью отложенного выполнения. Немедленное возвращаемое значение — это объект, в котором хранятся все сведения, необходимые для выполнения действия. Запрос, представленный этим методом, не выполняется, пока объект не будет перечислен либо путем вызова его GetEnumerator метода напрямую, либо с помощью foreach в C# или For Each в Visual Basic.

Для сравнения значений Defaultиспользуется средство сравнения на равенство по умолчанию.

При перечислении объекта, возвращаемого этим методом, UnionBy перечисляет first и second в этом порядке и возвращает каждый элемент, который еще не был получен.

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

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

.NET 9 и другие версии
Продукт Версии
.NET 6, 7, 8, 9

UnionBy<TSource,TKey>(IEnumerable<TSource>, IEnumerable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

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

Создает объединение наборов двух последовательностей в соответствии с указанной функцией селектора ключа.

public static System.Collections.Generic.IEnumerable<TSource> UnionBy<TSource,TKey> (this System.Collections.Generic.IEnumerable<TSource> first, System.Collections.Generic.IEnumerable<TSource> second, Func<TSource,TKey> keySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);

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

TSource

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

TKey

Тип ключа для идентификации элементов.

Параметры

first
IEnumerable<TSource>

Объект IEnumerable<T>, различающиеся элементы которого образуют первое множество для объединения.

second
IEnumerable<TSource>

Объект IEnumerable<T>, различающиеся элементы которого образуют второе множество для объединения.

keySelector
Func<TSource,TKey>

Функция, извлекающая ключ для каждого элемента.

comparer
IEqualityComparer<TKey>

Компаратор IEqualityComparer<T>, используемый для сравнения значений.

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

IEnumerable<TSource>

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

Исключения

Параметр first или second имеет значение null.

Комментарии

Этот метод реализуется с помощью отложенного выполнения. Немедленное возвращаемое значение — это объект, в котором хранятся все сведения, необходимые для выполнения действия. Запрос, представленный этим методом, не выполняется, пока объект не будет перечислен либо путем вызова его GetEnumerator метода напрямую, либо с помощью foreach в C# или For Each в Visual Basic.

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

При перечислении объекта, возвращаемого этим методом, UnionBy перечисляет first и second в этом порядке и возвращает каждый элемент, который еще не был получен.

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

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

.NET 9 и другие версии
Продукт Версии
.NET 6, 7, 8, 9