CollectionsExtensionsFullOuterJoinTOuter, TInner, TKey, TResult - метод

Объединяет две последовательности по алгоритму FULL OUTER JOIN.

Definition

Пространство имён: Tessa.Platform.Collections
Сборка: Tessa (в Tessa.dll) Версия: 4.0.4
C#
public static IEnumerable<TResult> FullOuterJoin<TOuter, TInner, TKey, TResult>(
	this IEnumerable<TOuter> outer,
	IEnumerable<TInner> inner,
	Func<TOuter, TKey> outerKeySelector,
	Func<TInner, TKey> innerKeySelector,
	Func<TOuter, TInner, TResult> resultSelector,
	IEqualityComparer<TKey>? comparer = null,
	TOuter outerDefault = null,
	TInner innerDefault = null
)

Параметры

outer  IEnumerableTOuter
Последовательность внешних элементов.
inner  IEnumerableTInner
Последовательность внутренних элементов.
outerKeySelector  FuncTOuter, TKey
Функция, извлекающая ключ из последовательности внешних элементов для сравнения с внутренними элементами.
innerKeySelector  FuncTInner, TKey
Функция, извлекающая ключ из последовательности внутренних элементов для сравнения с внешними элементами.
resultSelector  FuncTOuter, TInner, TResult
Объект, объединяющий элементы из внешней и внутренней последовательности в результирующую последовательность. Один из переданных элементов может быть равен null, но не оба, если типы TOuter и TInner этого не позволяют.
comparer  IEqualityComparerTKey  (Optional)
Объект, выполняющий сравнение ключей, извлечённых из обеих последовательностей, или null, если используется компаратор по умолчанию.
outerDefault  TOuter  (Optional)
Значение по умолчанию для внешних элементов.
innerDefault  TInner  (Optional)
Значение по умолчанию для внутренних элементов.

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

TOuter
Тип в последовательности внешних элементов.
TInner
Тип в последовательности внутренних элементов.
TKey
Тип ключа, по которому объединяются последовательности.
TResult
Тип результирующей последовательности.

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

IEnumerableTResult

Примечание об использовании

В Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа IEnumerableTOuter. При вызове метода для экземпляра следует опускать первый параметр. Дополнительные сведения см. в разделе Методы расширения (Visual Basic) или Методы расширения (Руководство по программированию в C#).

См. также