Compartilhar via


DbExpressionBuilder.Join Método

Definição

Sobrecargas

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

Cria um novo DbJoinExpression que une os conjuntos especificados pelas expressões externas e internas, em uma condição de igualdade entre as chaves externas e internas especificadas, usando InnerJoin como o DbExpressionKind .

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

Cria um novo DbProjectExpression que projeta o seletor especificado sobre os conjuntos especificados pelas expressões externas e internas, unidos em uma condição de igualdade entre as chaves externas e internas especificadas, usando InnerJoin como o DbExpressionKind .

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

Cria um novo DbJoinExpression que une os conjuntos especificados pelas expressões externas e internas, em uma condição de igualdade entre as chaves externas e internas especificadas, usando InnerJoin como o 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

Parâmetros

outer
DbExpression

Um DbExpression que especifica o argumento de conjunto externo.

inner
DbExpression

Um DbExpression que especifica o argumento de conjunto interno.

outerKey
Func<DbExpression,DbExpression>

Um método que especifica como o valor de chave externo deve ser derivado de um elemento da coleção externa.

innerKey
Func<DbExpression,DbExpression>

Um método que especifica como o valor de chave interno deve ser derivado de um elemento da coleção interna.

Retornos

A entrada DbJoinExpression é criada com um DbExpressionKind de InnerJoin, que representa a operação de junção interna aplicada aos conjuntos de entrada left e right em uma condição de junção que compara os valores de chave outer e inner com relação à igualdade.

Exceções

A expressão produzida por outerKey ou innerKey é nula.

As expressões produzidas por outerKey e innerKey não são comparáveis para igualdade.

Aplica-se a

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

Cria um novo DbProjectExpression que projeta o seletor especificado sobre os conjuntos especificados pelas expressões externas e internas, unidos em uma condição de igualdade entre as chaves externas e internas especificadas, usando InnerJoin como o 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

Parâmetros de tipo

TSelector

O tipo do seletor .

Parâmetros

outer
DbExpression

Um DbExpression que especifica o argumento de conjunto externo.

inner
DbExpression

Um DbExpression que especifica o argumento de conjunto interno.

outerKey
Func<DbExpression,DbExpression>

Um método que especifica como o valor de chave externo deve ser derivado de um elemento da coleção externa.

innerKey
Func<DbExpression,DbExpression>

Um método que especifica como o valor de chave interno deve ser derivado de um elemento da coleção interna.

selector
Func<DbExpression,DbExpression,TSelector>

Um método que especifica como um elemento do conjunto de resultados deve ser derivado de elementos dos conjuntos interno e externo. Esse método deve produzir uma instância de um tipo compatível com Join e pode ser resolvido em um DbExpression . Os requisitos de compatibilidade para TSelector estão descritos nos comentários.

Retornos

Um novo DbProjectExpression com o seletor especificado como sua projeção e uma novo DbJoinExpression como sua entrada. A entrada DbJoinExpression é criada com um DbExpressionKind de InnerJoin, que representa a operação de junção interna aplicada aos conjuntos de entrada esquerdo e direito em uma condição de junção que compara os valores de chave externo e interno com relação à igualdade.

Exceções

O resultado do seletor é nulo após a conversão em DbExpression.

O resultado do Seletor não é compatível com SelectMany.

Aplica-se a