DbExpressionBuilder.Join Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
Join(DbExpression, DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression>) |
Создает объект DbJoinExpression , который объединяет наборы, заданные внешним и внутренним выражениями, на условии равенства между указанными внешними и внутренними ключами, используя InnerJoin в DbExpressionKind качестве . |
Join<TSelector>(DbExpression, DbExpression, Func<DbExpression, DbExpression>, Func<DbExpression,DbExpression>, Func<DbExpression, DbExpression,TSelector>) |
Создает новый DbProjectExpression объект , который проецирует указанный селектор на наборы, заданные внешним и внутренним выражениями, соединенные на условии равенства между указанным внешним и внутренним ключами, используя InnerJoin в DbExpressionKind качестве . |
Join(DbExpression, DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression>)
Создает объект DbJoinExpression , который объединяет наборы, заданные внешним и внутренним выражениями, на условии равенства между указанными внешними и внутренними ключами, используя InnerJoin в 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
Параметры
- outer
- DbExpression
DbExpression, указывающий аргумент внешнего набора.
- inner
- DbExpression
DbExpression, указывающий аргумент внутреннего набора.
- outerKey
- Func<DbExpression,DbExpression>
Метод, указывающий способ получения значения внешнего ключа из элемента внешнего набора.
- innerKey
- Func<DbExpression,DbExpression>
Метод, указывающий способ получения значения внутреннего ключа из элемента внутреннего набора.
Возвращаемое значение
Выражение DbJoinExpression создается с помощью класса DbExpressionKind InnerJoin, который представляет операцию внутреннего соединения, применяемую к левому и правому входным наборам в условии соединения, сравнивающего значения внешних и внутренних ключей на равенство.
Исключения
Выражение, создаваемое outerKey или innerKey, имеет значение NULL.
Выражения, создаваемые outerKey и innerKey, несовместимы по равенству.
Применяется к
Join<TSelector>(DbExpression, DbExpression, Func<DbExpression, DbExpression>, Func<DbExpression,DbExpression>, Func<DbExpression, DbExpression,TSelector>)
Создает новый DbProjectExpression объект , который проецирует указанный селектор на наборы, заданные внешним и внутренним выражениями, соединенные на условии равенства между указанным внешним и внутренним ключами, используя InnerJoin в 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
Параметры типа
- TSelector
Тип селектора .
Параметры
- outer
- DbExpression
DbExpression, указывающий аргумент внешнего набора.
- inner
- DbExpression
DbExpression, указывающий аргумент внутреннего набора.
- outerKey
- Func<DbExpression,DbExpression>
Метод, указывающий способ получения значения внешнего ключа из элемента внешнего набора.
- innerKey
- Func<DbExpression,DbExpression>
Метод, указывающий способ получения значения внутреннего ключа из элемента внутреннего набора.
- selector
- Func<DbExpression,DbExpression,TSelector>
Метод, указывающий способ получения элемента результирующего набора из элементов внутреннего и внешнего наборов. Этот метод должен создать экземпляр типа , совместимый с Join и который может быть разрешен в DbExpression . Требования к совместимости TSelector приведены в примечаниях.
Возвращаемое значение
Новое выражение DbProjectExpression с указанным селектором в качестве его проекции и новым выражением DbJoinExpression качестве входных данных. Входное выражение DbJoinExpression создается с помощью DbExpressionKind InnerJoin, который представляет операцию внутреннего соединения, применяемую к левому и правому входным наборам в условии соединения, сравнивающего значения внешних и внутренних ключей на равенство.
Исключения
Результат селектора после преобразования в DbExpression имеет значение NULL.
Результат selector несовместим с SelectMany.
Применяется к
Entity Framework