Udostępnij za pośrednictwem


DbExpressionBuilder.Join Metoda

Definicja

Przeciążenia

Join(DbExpression, DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression>)

Tworzy nowy DbJoinExpression , który łączy zestawy określone przez wyrażenia zewnętrzne i wewnętrzne, w warunku równości między określonymi kluczami zewnętrznymi i wewnętrznymi, używając innerJoin jako DbExpressionKind .

Join<TSelector>(DbExpression, DbExpression, Func<DbExpression, DbExpression>, Func<DbExpression,DbExpression>, Func<DbExpression, DbExpression,TSelector>)

Tworzy nowy DbProjectExpression element, który tworzy określony selektor dla zestawów określonych przez wyrażenia zewnętrzne i wewnętrzne, sprzężone w warunku równości między określonymi kluczami zewnętrznymi i wewnętrznymi przy użyciu innerJoin jako DbExpressionKind .

Join(DbExpression, DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression>)

Tworzy nowy DbJoinExpression , który łączy zestawy określone przez wyrażenia zewnętrzne i wewnętrzne, w warunku równości między określonymi kluczami zewnętrznymi i wewnętrznymi, używając innerJoin jako DbExpressionKind .

public static System.Data.Entity.Core.Common.CommandTrees.DbJoinExpression Join (this System.Data.Entity.Core.Common.CommandTrees.DbExpression outer, System.Data.Entity.Core.Common.CommandTrees.DbExpression inner, Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression,System.Data.Entity.Core.Common.CommandTrees.DbExpression> outerKey, Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression,System.Data.Entity.Core.Common.CommandTrees.DbExpression> innerKey);
static member Join : System.Data.Entity.Core.Common.CommandTrees.DbExpression * System.Data.Entity.Core.Common.CommandTrees.DbExpression * Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression, System.Data.Entity.Core.Common.CommandTrees.DbExpression> * Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression, System.Data.Entity.Core.Common.CommandTrees.DbExpression> -> System.Data.Entity.Core.Common.CommandTrees.DbJoinExpression
<Extension()>
Public Function Join (outer As DbExpression, inner As DbExpression, outerKey As Func(Of DbExpression, DbExpression), innerKey As Func(Of DbExpression, DbExpression)) As DbJoinExpression

Parametry

outer
DbExpression

Element DbExpression określający zewnętrzny argument zestawu.

inner
DbExpression

Element DbExpression określający argument zestawu wewnętrznego.

outerKey
Func<DbExpression,DbExpression>

Metoda określająca, w jaki sposób wartość klucza zewnętrznego powinna pochodzić z elementu zestawu zewnętrznego.

innerKey
Func<DbExpression,DbExpression>

Metoda określająca, w jaki sposób wartość klucza wewnętrznego powinna pochodzić z elementu zestawu wewnętrznego.

Zwraca

Nowa funkcja DbJoinExpression z elementem DbExpressionKind InnerJoin reprezentuje operację sprzężenia wewnętrznego zastosowaną do zestawów wejściowych po lewej i prawej stronie w warunku sprzężenia, który porównuje wartości klucza zewnętrznego i wewnętrznego pod kątem równości.

Wyjątki

Wyrażenie generowane przez wartość outerKey lub innerKey ma wartość null.

Wyrażenia generowane przez element outerKey i innerKey nie są porównywalne pod kątem równości.

Dotyczy

Join<TSelector>(DbExpression, DbExpression, Func<DbExpression, DbExpression>, Func<DbExpression,DbExpression>, Func<DbExpression, DbExpression,TSelector>)

Tworzy nowy DbProjectExpression element, który tworzy określony selektor dla zestawów określonych przez wyrażenia zewnętrzne i wewnętrzne, sprzężone w warunku równości między określonymi kluczami zewnętrznymi i wewnętrznymi przy użyciu innerJoin jako DbExpressionKind .

public static System.Data.Entity.Core.Common.CommandTrees.DbProjectExpression Join<TSelector> (this System.Data.Entity.Core.Common.CommandTrees.DbExpression outer, System.Data.Entity.Core.Common.CommandTrees.DbExpression inner, Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression,System.Data.Entity.Core.Common.CommandTrees.DbExpression> outerKey, Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression,System.Data.Entity.Core.Common.CommandTrees.DbExpression> innerKey, Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression,System.Data.Entity.Core.Common.CommandTrees.DbExpression,TSelector> selector);
static member Join : System.Data.Entity.Core.Common.CommandTrees.DbExpression * System.Data.Entity.Core.Common.CommandTrees.DbExpression * Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression, System.Data.Entity.Core.Common.CommandTrees.DbExpression> * Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression, System.Data.Entity.Core.Common.CommandTrees.DbExpression> * Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression, System.Data.Entity.Core.Common.CommandTrees.DbExpression, 'Selector> -> System.Data.Entity.Core.Common.CommandTrees.DbProjectExpression
<Extension()>
Public Function Join(Of TSelector) (outer As DbExpression, inner As DbExpression, outerKey As Func(Of DbExpression, DbExpression), innerKey As Func(Of DbExpression, DbExpression), selector As Func(Of DbExpression, DbExpression, TSelector)) As DbProjectExpression

Parametry typu

TSelector

Typ selektora .

Parametry

outer
DbExpression

Element DbExpression określający zewnętrzny argument zestawu.

inner
DbExpression

Element DbExpression określający argument zestawu wewnętrznego.

outerKey
Func<DbExpression,DbExpression>

Metoda określająca, w jaki sposób wartość klucza zewnętrznego powinna pochodzić z elementu zestawu zewnętrznego.

innerKey
Func<DbExpression,DbExpression>

Metoda określająca, w jaki sposób wartość klucza wewnętrznego powinna pochodzić z elementu zestawu wewnętrznego.

selector
Func<DbExpression,DbExpression,TSelector>

Metoda określająca, w jaki sposób element zestawu wyników powinien pochodzić z elementów zestawów wewnętrznych i zewnętrznych. Ta metoda musi utworzyć wystąpienie typu zgodnego z funkcją Join i można je rozpoznać jako DbExpression . Wymagania dotyczące zgodności funkcji TSelector zostały opisane w uwagach.

Zwraca

Nowy dbProjectExpression z określonym selektorem jako jego projekcją i nową wartością DbJoinExpression jako jego danymi wejściowymi. Dane wejściowe DbJoinExpression jest tworzone za pomocą elementu DbExpressionKind InnerJoin, który reprezentuje operację sprzężenia wewnętrznego zastosowaną do zestawów wejściowych po lewej i prawej stronie w warunku sprzężenia, który porównuje wartości klucza zewnętrznego i wewnętrznego pod kątem równości.

Wyjątki

Wynik selektora ma wartość null po konwersji na DbExpression.

Wynik selektora nie jest zgodny z selectMany.

Dotyczy