DbExpressionBuilder.Join Méthode

Définition

Surcharges

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

Crée un nouveau DbJoinExpression qui joint les jeux spécifiés par les expressions externes et internes, sur une condition d’égalité entre les clés externes et internes spécifiées, en utilisant InnerJoin comme le DbExpressionKind.

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

Crée un nouveau DbProjectExpression qui projette le sélecteur spécifié sur les jeux spécifiés par les expressions externes et internes, joint à une condition d’égalité entre les clés externes et internes spécifiées, en utilisant InnerJoin comme le DbExpressionKind.

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

Crée un nouveau DbJoinExpression qui joint les jeux spécifiés par les expressions externes et internes, sur une condition d’égalité entre les clés externes et internes spécifiées, en utilisant InnerJoin comme le DbExpressionKind.

public:
[System::Runtime::CompilerServices::Extension]
 static System::Data::Common::CommandTrees::DbJoinExpression ^ Join(System::Data::Common::CommandTrees::DbExpression ^ outer, System::Data::Common::CommandTrees::DbExpression ^ inner, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^> ^ outerKey, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^> ^ innerKey);
public static System.Data.Common.CommandTrees.DbJoinExpression Join(this System.Data.Common.CommandTrees.DbExpression outer, System.Data.Common.CommandTrees.DbExpression inner, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression> outerKey, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression> innerKey);
static member Join : System.Data.Common.CommandTrees.DbExpression * System.Data.Common.CommandTrees.DbExpression * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression> * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression> -> System.Data.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

Paramètres

outer
DbExpression

Qui DbExpression spécifie l’argument set externe.

inner
DbExpression

Qui DbExpression spécifie l’argument set interne.

outerKey
Func<DbExpression,DbExpression>

Méthode qui spécifie la façon dont la valeur de clé externe doit être dérivée d’un élément du jeu externe.

innerKey
Func<DbExpression,DbExpression>

Méthode qui spécifie la façon dont la valeur de clé interne doit être dérivée d’un élément du jeu interne.

Retours

Nouvelle DbJoinExpression, avec innerJoin DbExpressionKind , qui représente l’opération de jointure interne appliquée aux jeux d’entrée de gauche et de droite sous une condition de jointure qui compare les valeurs de clé externe et interne pour l’égalité.

Exceptions

outer, innerouterKey ou innerKey est null.

- ou -

L’expression produite par outerKey ou innerKey est null.

outer ou inner n’a pas de type de résultat de collection.

- ou -

Les expressions produites par outerKey et innerKey ne sont pas comparables pour l’égalité.

S’applique à

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

Crée un nouveau DbProjectExpression qui projette le sélecteur spécifié sur les jeux spécifiés par les expressions externes et internes, joint à une condition d’égalité entre les clés externes et internes spécifiées, en utilisant InnerJoin comme le DbExpressionKind.

public:
generic <typename TSelector>
[System::Runtime::CompilerServices::Extension]
 static System::Data::Common::CommandTrees::DbProjectExpression ^ Join(System::Data::Common::CommandTrees::DbExpression ^ outer, System::Data::Common::CommandTrees::DbExpression ^ inner, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^> ^ outerKey, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^> ^ innerKey, Func<System::Data::Common::CommandTrees::DbExpression ^, System::Data::Common::CommandTrees::DbExpression ^, TSelector> ^ selector);
public static System.Data.Common.CommandTrees.DbProjectExpression Join<TSelector>(this System.Data.Common.CommandTrees.DbExpression outer, System.Data.Common.CommandTrees.DbExpression inner, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression> outerKey, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression> innerKey, Func<System.Data.Common.CommandTrees.DbExpression,System.Data.Common.CommandTrees.DbExpression,TSelector> selector);
static member Join : System.Data.Common.CommandTrees.DbExpression * System.Data.Common.CommandTrees.DbExpression * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression> * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression> * Func<System.Data.Common.CommandTrees.DbExpression, System.Data.Common.CommandTrees.DbExpression, 'Selector> -> System.Data.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

Paramètres de type

TSelector

Type du selector.

Paramètres

outer
DbExpression

Qui DbExpression spécifie l’argument set externe.

inner
DbExpression

Qui DbExpression spécifie l’argument set interne.

outerKey
Func<DbExpression,DbExpression>

Méthode qui spécifie la façon dont la valeur de clé externe doit être dérivée d’un élément du jeu externe.

innerKey
Func<DbExpression,DbExpression>

Méthode qui spécifie la façon dont la valeur de clé interne doit être dérivée d’un élément du jeu interne.

selector
Func<DbExpression,DbExpression,TSelector>

Méthode qui spécifie comment un élément du jeu de résultats doit être dérivé d’éléments des jeux internes et externes. Cette méthode doit produire une instance d’un type compatible avec Join et peut être résolue en un DbExpression. Les exigences TSelector de compatibilité sont décrites dans les remarques.

Retours

Nouveau DbProjectExpression avec le sélecteur spécifié comme projection, et une nouvelle DbJoinExpression comme entrée. L’entrée DbJoinExpression est créée avec innerJoin DbExpressionKind , qui représente l’opération de jointure interne appliquée aux ensembles d’entrées de gauche et de droite sous une condition de jointure qui compare les valeurs de clé externe et interne pour l’égalité.

Exceptions

outer, inner, ou outerKeyinnerKeyselector est null.

- ou -

L’expression produite par outerKey ou innerKey est null.

- ou -

Le résultat est selector null après la conversion en DbExpression.

outer ou inner n’a pas de type de résultat de collection.

- ou -

Les expressions produites par outerKey et innerKey ne sont pas comparables pour l’égalité.

- ou -

Le résultat n’est selector pas compatible avec SelectMany.

Remarques

Pour être compatible avec Join, TSelector doit être dérivé de , ou doit être un type anonyme avec des propriétés dérivées de DbExpressionDbExpression. Voici des exemples de types pris en charge pour TSelector:

outer.Join(inner, o => o.Property("ID"), i => i.Property("ID"), (o, i) => o.Property("Name"))

(TSelector est DbPropertyExpression).

outer.Join(inner, o => o.Property("ID"), i => i.Property("ID"), (o, i) => new { OName = o.Property("Name"), IName = i.Property("Name") })

(TSelector est un type anonyme avec des propriétés dérivées de DbExpression).

S’applique à