CollectionsExtensionsFullOuterJoinTOuter, TInner, TKey, TResult - метод
Объединяет две последовательности по алгоритму FULL OUTER JOIN.
Пространство имён: Tessa.Platform.CollectionsСборка: Tessa (в Tessa.dll) Версия: 4.0.4
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
)
<ExtensionAttribute>
Public Shared Function FullOuterJoin(Of TOuter, TInner, TKey, TResult) (
outer As IEnumerable(Of TOuter),
inner As IEnumerable(Of TInner),
outerKeySelector As Func(Of TOuter, TKey),
innerKeySelector As Func(Of TInner, TKey),
resultSelector As Func(Of TOuter, TInner, TResult),
Optional comparer As IEqualityComparer(Of TKey) = Nothing,
Optional outerDefault As TOuter = Nothing,
Optional innerDefault As TInner = Nothing
) As IEnumerable(Of TResult)
public:
[ExtensionAttribute]
generic<typename TOuter, typename TInner, typename TKey, typename TResult>
static IEnumerable<TResult>^ FullOuterJoin(
IEnumerable<TOuter>^ outer,
IEnumerable<TInner>^ inner,
Func<TOuter, TKey>^ outerKeySelector,
Func<TInner, TKey>^ innerKeySelector,
Func<TOuter, TInner, TResult>^ resultSelector,
IEqualityComparer<TKey>^ comparer = nullptr,
TOuter outerDefault = nullptr,
TInner innerDefault = nullptr
)
[<ExtensionAttribute>]
static member FullOuterJoin :
outer : IEnumerable<'TOuter> *
inner : IEnumerable<'TInner> *
outerKeySelector : Func<'TOuter, 'TKey> *
innerKeySelector : Func<'TInner, 'TKey> *
resultSelector : Func<'TOuter, 'TInner, 'TResult> *
?comparer : IEqualityComparer<'TKey> *
?outerDefault : 'TOuter *
?innerDefault : 'TInner
(* Defaults:
let _comparer = defaultArg comparer null
let _outerDefault = defaultArg outerDefault null
let _innerDefault = defaultArg innerDefault null
*)
-> IEnumerable<'TResult>
- 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#).