Queryable.RightJoin Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
| Name | Description |
|---|---|
| RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>) |
Koreluje prvky dvou sekvencí na základě odpovídajících klíčů. Výchozí porovnávač rovnosti se používá k porovnání klíčů. |
| RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>, IEqualityComparer<TKey>) |
Koreluje prvky dvou sekvencí na základě odpovídajících klíčů. Zadaný IEqualityComparer<T> slouží k porovnání klíčů. |
| RightJoin<TOuter,TInner,TKey>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, IEqualityComparer<TKey>) |
RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>)
- Zdroj:
- Queryable.cs
- Zdroj:
- Queryable.cs
Koreluje prvky dvou sekvencí na základě odpovídajících klíčů. Výchozí porovnávač rovnosti se používá k porovnání klíčů.
public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TResult> ^ RightJoin(System::Linq::IQueryable<TOuter> ^ outer, System::Collections::Generic::IEnumerable<TInner> ^ inner, System::Linq::Expressions::Expression<Func<TOuter, TKey> ^> ^ outerKeySelector, System::Linq::Expressions::Expression<Func<TInner, TKey> ^> ^ innerKeySelector, System::Linq::Expressions::Expression<Func<TOuter, TInner, TResult> ^> ^ resultSelector);
public static System.Linq.IQueryable<TResult> RightJoin<TOuter,TInner,TKey,TResult>(this System.Linq.IQueryable<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, System.Linq.Expressions.Expression<Func<TOuter,TKey>> outerKeySelector, System.Linq.Expressions.Expression<Func<TInner,TKey>> innerKeySelector, System.Linq.Expressions.Expression<Func<TOuter?,TInner,TResult>> resultSelector);
static member RightJoin : System.Linq.IQueryable<'Outer> * seq<'Inner> * System.Linq.Expressions.Expression<Func<'Outer, 'Key>> * System.Linq.Expressions.Expression<Func<'Inner, 'Key>> * System.Linq.Expressions.Expression<Func<'Outer, 'Inner, 'Result>> -> System.Linq.IQueryable<'Result>
<Extension()>
Public Function RightJoin(Of TOuter, TInner, TKey, TResult) (outer As IQueryable(Of TOuter), inner As IEnumerable(Of TInner), outerKeySelector As Expression(Of Func(Of TOuter, TKey)), innerKeySelector As Expression(Of Func(Of TInner, TKey)), resultSelector As Expression(Of Func(Of TOuter, TInner, TResult))) As IQueryable(Of TResult)
Parametry typu
- TOuter
Typ prvků první sekvence.
- TInner
Typ prvků druhé sekvence.
- TKey
Typ klíčů vrácených funkcemi selektoru klíčů.
- TResult
Typ výsledných prvků.
Parametry
- outer
- IQueryable<TOuter>
První sekvence, která se má spojit.
- inner
- IEnumerable<TInner>
Sekvence, která se má spojit s první sekvencí.
- outerKeySelector
- Expression<Func<TOuter,TKey>>
Funkce, která extrahuje klíč spojení z každého prvku první sekvence.
- innerKeySelector
- Expression<Func<TInner,TKey>>
Funkce, která extrahuje klíč spojení z každého prvku druhé sekvence.
- resultSelector
- Expression<Func<TOuter,TInner,TResult>>
Funkce, která vytvoří výsledný prvek ze dvou odpovídajících prvků.
Návraty
Ten IEnumerable<T> má prvky typu TResult , které jsou získány provedením pravého vnějšího spojení ve dvou sekvencích.
Výjimky
outer
inner nebo outerKeySelector nebo nebo innerKeySelectorresultSelector je null.
Poznámky
Tato metoda má alespoň jeden parametr typu Expression<TDelegate> , jehož argument typu je jedním z Func<T,TResult> typů.
Pro tyto parametry můžete předat výraz lambda a bude zkompilován do Expression<TDelegate>.
Metoda RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>) vygeneruje MethodCallExpression , která představuje samotné volání RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>) jako vytvořenou obecnou metodu.
Pak předá MethodCallExpression metodu CreateQuery<TElement>(Expression)IQueryProvider reprezentované Provider vlastností parametruouter.
Chování dotazu, ke kterému dochází v důsledku spuštění stromu výrazu, který představuje volání RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>,
Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>,
Expression<Func<TOuter,TInner,TResult>>) , závisí na implementaci typu parametru outer .
Očekávané chování je to, že pravé vnější spojení.
outerKeySelector Funkce innerKeySelector se používají k extrakci klíčů z outer a innerv uvedeném pořadí.
Tyto klíče se porovnávají s rovností tak, aby odpovídaly prvkům z každé sekvence.
Dvojice prvků je uložena pro každý prvek, který inner odpovídá prvku v outer, plus pár pro každý prvek, který inner nemá žádné shody v outer.
resultSelector Funkce se pak vyvolá k projektování výsledného objektu z každé dvojice prvků.
Platí pro
RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>, IEqualityComparer<TKey>)
- Zdroj:
- Queryable.cs
- Zdroj:
- Queryable.cs
Koreluje prvky dvou sekvencí na základě odpovídajících klíčů. Zadaný IEqualityComparer<T> slouží k porovnání klíčů.
public:
generic <typename TOuter, typename TInner, typename TKey, typename TResult>
[System::Runtime::CompilerServices::Extension]
static System::Linq::IQueryable<TResult> ^ RightJoin(System::Linq::IQueryable<TOuter> ^ outer, System::Collections::Generic::IEnumerable<TInner> ^ inner, System::Linq::Expressions::Expression<Func<TOuter, TKey> ^> ^ outerKeySelector, System::Linq::Expressions::Expression<Func<TInner, TKey> ^> ^ innerKeySelector, System::Linq::Expressions::Expression<Func<TOuter, TInner, TResult> ^> ^ resultSelector, System::Collections::Generic::IEqualityComparer<TKey> ^ comparer);
public static System.Linq.IQueryable<TResult> RightJoin<TOuter,TInner,TKey,TResult>(this System.Linq.IQueryable<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, System.Linq.Expressions.Expression<Func<TOuter,TKey>> outerKeySelector, System.Linq.Expressions.Expression<Func<TInner,TKey>> innerKeySelector, System.Linq.Expressions.Expression<Func<TOuter?,TInner,TResult>> resultSelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer);
static member RightJoin : System.Linq.IQueryable<'Outer> * seq<'Inner> * System.Linq.Expressions.Expression<Func<'Outer, 'Key>> * System.Linq.Expressions.Expression<Func<'Inner, 'Key>> * System.Linq.Expressions.Expression<Func<'Outer, 'Inner, 'Result>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Linq.IQueryable<'Result>
<Extension()>
Public Function RightJoin(Of TOuter, TInner, TKey, TResult) (outer As IQueryable(Of TOuter), inner As IEnumerable(Of TInner), outerKeySelector As Expression(Of Func(Of TOuter, TKey)), innerKeySelector As Expression(Of Func(Of TInner, TKey)), resultSelector As Expression(Of Func(Of TOuter, TInner, TResult)), comparer As IEqualityComparer(Of TKey)) As IQueryable(Of TResult)
Parametry typu
- TOuter
Typ prvků první sekvence.
- TInner
Typ prvků druhé sekvence.
- TKey
Typ klíčů vrácených funkcemi selektoru klíčů.
- TResult
Typ výsledných prvků.
Parametry
- outer
- IQueryable<TOuter>
První sekvence, která se má spojit.
- inner
- IEnumerable<TInner>
Sekvence, která se má spojit s první sekvencí.
- outerKeySelector
- Expression<Func<TOuter,TKey>>
Funkce, která extrahuje klíč spojení z každého prvku první sekvence.
- innerKeySelector
- Expression<Func<TInner,TKey>>
Funkce, která extrahuje klíč spojení z každého prvku druhé sekvence.
- resultSelector
- Expression<Func<TOuter,TInner,TResult>>
Funkce, která vytvoří výsledný prvek ze dvou odpovídajících prvků.
- comparer
- IEqualityComparer<TKey>
Hodnota IEqualityComparer<T> hash a porovnání klíčů
Návraty
Ten IEnumerable<T> má prvky typu TResult , které jsou získány provedením pravého vnějšího spojení ve dvou sekvencích.
Výjimky
outer
inner nebo outerKeySelector nebo nebo innerKeySelectorresultSelector je null.
Poznámky
Tato metoda má alespoň jeden parametr typu Expression<TDelegate> , jehož argument typu je jedním z Func<T,TResult> typů.
Pro tyto parametry můžete předat výraz lambda a bude zkompilován do Expression<TDelegate>.
Metoda RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>, IEqualityComparer<TKey>) vygeneruje MethodCallExpression , která představuje samotné volání RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, Expression<Func<TOuter,TInner,TResult>>, IEqualityComparer<TKey>) jako vytvořenou obecnou metodu.
Pak předá MethodCallExpression metodu CreateQuery<TElement>(Expression)IQueryProvider reprezentované Provider vlastností parametruouter.
Chování dotazu, ke kterému dochází v důsledku spuštění stromu výrazu, který představuje volání RightJoin<TOuter,TInner,TKey,TResult>(IQueryable<TOuter>, IEnumerable<TInner>,
Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>,
Expression<Func<TOuter,TInner,TResult>>, IEqualityComparer<TKey>) , závisí na implementaci typu parametru outer .
Očekávané chování je to, že pravé vnější spojení.
outerKeySelector Funkce innerKeySelector se používají k extrakci klíčů z outer a innerv uvedeném pořadí.
Tyto klíče se porovnávají s rovností tak, aby odpovídaly prvkům z každé sekvence.
Dvojice prvků je uložena pro každý prvek, který inner odpovídá prvku v outer, plus pár pro každý prvek, který inner nemá žádné shody v outer.
resultSelector Funkce se pak vyvolá k projektování výsledného objektu z každé dvojice prvků.
Platí pro
RightJoin<TOuter,TInner,TKey>(IQueryable<TOuter>, IEnumerable<TInner>, Expression<Func<TOuter,TKey>>, Expression<Func<TInner,TKey>>, IEqualityComparer<TKey>)
- Zdroj:
- Queryable.cs
public static System.Linq.IQueryable<(TOuter? Outer, TInner Inner)> RightJoin<TOuter,TInner,TKey>(this System.Linq.IQueryable<TOuter> outer, System.Collections.Generic.IEnumerable<TInner> inner, System.Linq.Expressions.Expression<Func<TOuter,TKey>> outerKeySelector, System.Linq.Expressions.Expression<Func<TInner,TKey>> innerKeySelector, System.Collections.Generic.IEqualityComparer<TKey>? comparer = default);
static member RightJoin : System.Linq.IQueryable<'Outer> * seq<'Inner> * System.Linq.Expressions.Expression<Func<'Outer, 'Key>> * System.Linq.Expressions.Expression<Func<'Inner, 'Key>> * System.Collections.Generic.IEqualityComparer<'Key> -> System.Linq.IQueryable<ValueTuple<'Outer, 'Inner>>
<Extension()>
Public Function RightJoin(Of TOuter, TInner, TKey) (outer As IQueryable(Of TOuter), inner As IEnumerable(Of TInner), outerKeySelector As Expression(Of Func(Of TOuter, TKey)), innerKeySelector As Expression(Of Func(Of TInner, TKey)), Optional comparer As IEqualityComparer(Of TKey) = Nothing) As IQueryable(Of ValueTuple(Of TOuter, TInner))
Parametry typu
- TOuter
- TInner
- TKey
Parametry
- outer
- IQueryable<TOuter>
- inner
- IEnumerable<TInner>
- outerKeySelector
- Expression<Func<TOuter,TKey>>
- innerKeySelector
- Expression<Func<TInner,TKey>>
- comparer
- IEqualityComparer<TKey>