Поделиться через


DbExpressionBuilder Класс

Определение

Предоставляет API для создания выражений DbExpression и обеспечивает доступ к этому API в форме методов расширения в самом типе выражения.

public ref class DbExpressionBuilder abstract sealed
public static class DbExpressionBuilder
type DbExpressionBuilder = class
Public Module DbExpressionBuilder
Наследование
DbExpressionBuilder

Свойства

False

Получает объект DbConstantExpression с логическим значением false.

True

Получает объект DbConstantExpression с логическим значением true.

Методы

Aggregate(EdmFunction, DbExpression)

Создает новый экземпляр DbFunctionAggregate.

AggregateDistinct(EdmFunction, DbExpression)

Создает новый DbFunctionAggregate, применяющийся определенным образом.

All(DbExpression, Func<DbExpression,DbExpression>)

Создает новый объект DbQuantifierExpression, определяющий, распространяется ли действие заданного предиката на все элементы входного набора.

All(DbExpressionBinding, DbExpression)

Создает новый объект DbQuantifierExpression, определяющий, распространяется ли действие заданного предиката на все элементы входного набора.

And(DbExpression, DbExpression)

Создает объект DbAndExpression, выполняющий логическую операцию И для левого и правого аргументов.

Any(DbExpression)

Создает новое выражение DbExpression, определяющее, является ли заданный аргумент набора непустым.

Any(DbExpression, Func<DbExpression,DbExpression>)

Создает новый объект DbQuantifierExpression, определяющий, распространяется ли действие заданного предиката на все элементы входного набора.

Any(DbExpressionBinding, DbExpression)

Создает новый объект DbQuantifierExpression, определяющий, распространяется ли действие заданного предиката на все элементы входного набора.

As(DbAggregate, String)

Возвращает указанные аргументы в виде объекта пары "ключ-значение".

As(DbExpression, String)

Возвращает указанные аргументы в виде объекта пары "ключ-значение".

Bind(DbExpression)

Создает новый объект DbExpressionBinding, использующий сгенерированное имя переменной для привязки данного выражения.

BindAs(DbExpression, String)

Создает объект DbExpressionBinding, использующий указанное имя переменной для привязки данного выражения.

Case(IEnumerable<DbExpression>, IEnumerable<DbExpression>, DbExpression)

Создает новый экземпляр DbCaseExpression.

CastTo(DbExpression, TypeUsage)

Создает новое выражение DbCastExpression, применяющее операцию приведения к полиморфному аргументу.

Constant(Object)

Создает новый объект DbConstantExpression с заданным значением константы

Constant(TypeUsage, Object)

Создает новое выражение DbConstantExpression заданного типа-примитива с указанным постоянным значением.

CreateRef(EntitySet, DbExpression[])

Создает новое выражение DbRefExpression, которое кодирует ссылку на определенную сущность на основе значений ключей.

CreateRef(EntitySet, EntityType, DbExpression[])

Создает новое выражение DbRefExpression, которое кодирует ссылку на определенную сущность указанного типа на основании значений ключей.

CreateRef(EntitySet, EntityType, IEnumerable<DbExpression>)

Создает новое выражение DbRefExpression, которое кодирует ссылку на определенную сущность указанного типа на основании значений ключей.

CreateRef(EntitySet, IEnumerable<DbExpression>)

Создает новое выражение DbRefExpression, которое кодирует ссылку на определенную сущность на основе значений ключей.

CrossApply(DbExpression, Func<DbExpression,KeyValuePair<String,DbExpression>>)

Создает новое выражение DbApplyExpression, которое вычисляет указанное выражение apply один раз для каждого из элементов входного набора, создавая на выходе коллекцию строк с соответствующими столбцами input и apply. Строки, для которых результатом выражения apply стало пустое множество, не включаются.

CrossApply(DbExpressionBinding, DbExpressionBinding)

Создает новое выражение DbApplyExpression, которое вычисляет указанное выражение apply один раз для каждого из элементов входного набора, создавая на выходе коллекцию строк с соответствующими столбцами input и apply. Строки, для которых результатом выражения apply стало пустое множество, не включаются.

CrossJoin(IEnumerable<DbExpressionBinding>)

Создает новое выражение DbCrossJoinExpression, которое без каких-либо условий объединяет наборы, заданные списком входящих привязок выражений.

Deref(DbExpression)

Создает новое выражение DbDerefExpression, которое получает определенную сущность, если дано выражение ссылки.

Distinct(DbExpression)

Создает новое выражение DbDistinctExpression, которое удаляет повторяющиеся элементы из указанного аргумента набора.

Divide(DbExpression, DbExpression)

Создает новое выражение DbArithmeticExpression, которое делит левый аргумент на правый аргумент.

Element(DbExpression)

Создает новое выражение DbElementExpression, преобразующее набор в одиночный объект.

Equal(DbExpression, DbExpression)

Создает новое выражение DbComparisonExpression, проверяющее, равен ли левый аргумент правому.

Except(DbExpression, DbExpression)

Создает новое выражение DbExceptExpression, вычисляющее разницу между левым аргументом набора и правым аргументом набора.

Exists(DbExpression)

Создает новое выражение DbExpression, определяющее, является ли заданный аргумент набора непустым.

Filter(DbExpressionBinding, DbExpression)

Создает новое выражение DbFilterExpression, фильтрующее элементы заданного входного набора с использованием заданного предиката.

FullOuterJoin(DbExpression, DbExpression, Func<DbExpression,DbExpression,DbExpression>)

Создает класс DbJoinExpression, соединяющий наборы, задаваемые левым и правым выражениями, в соответствии с заданным условием соединения. При этом FullOuterJoin используется в качестве типа DbExpressionKind.

FullOuterJoin(DbExpressionBinding, DbExpressionBinding, DbExpression)

Создает новое выражение DbJoinExpression, которое объединяет наборы, заданные левой и правой привязками выражения, при указанном условии объединения, используя FullOuterJoin в качестве DbExpressionKind.

GetEntityRef(DbExpression)

Создает новое выражение DbEntityRefExpression, которое получает ссылку заданной сущности в структурной форме.

GetRefKey(DbExpression)

Создает новое выражение DbRefKeyExpression, которое получает ключевые значения заданной ссылки в структурной форме.

GreaterThan(DbExpression, DbExpression)

Создает новое выражение DbComparisonExpression, определяющее, верно ли, что левый аргумент больше правого аргумента.

GreaterThanOrEqual(DbExpression, DbExpression)

Создает новое выражение DbComparisonExpression, определяющее, верно ли, что левый аргумент больше или равен правому аргументу.

GroupBind(DbExpression)

Создает новую привязку выражения группы, которая использует сгенерированные имена переменной и переменной группы для привязки заданного выражения.

GroupBindAs(DbExpression, String, String)

Создает новый объект DbGroupExpressionBinding, который использует заданные имена переменной и переменной группы для привязки заданного выражения.

GroupBy(DbGroupExpressionBinding, IEnumerable<KeyValuePair<String,DbExpression>>, IEnumerable<KeyValuePair<String,DbAggregate>>)

Создает новый объект DbGroupByExpression, группирующий элементы входного набора в соответствии с заданными ключами группы и применяющий указанные статистические выражения.

InnerJoin(DbExpression, DbExpression, Func<DbExpression,DbExpression,DbExpression>)

Создает новое выражение DbJoinExpression, которое объединяет наборы, заданные левым и правым выражениями, при указанном условии объединения, используя InnerJoin в качестве DbExpressionKind.

InnerJoin(DbExpressionBinding, DbExpressionBinding, DbExpression)

Создает новое выражение DbJoinExpression, которое объединяет наборы, заданные левой и правой привязками выражения, при указанном условии объединения, используя InnerJoin в качестве DbExpressionKind.

Intersect(DbExpression, DbExpression)

Создает новое выражение DbIntersectExpression, вычисляющее пересечение левого и правого аргументов набора.

Invoke(DbLambda, DbExpression[])

Создает новое выражение DbLambdaExpression, представляющее применение заданной лямбда-функции к данным аргументам.

Invoke(DbLambda, IEnumerable<DbExpression>)

Создает новое выражение DbLambdaExpression, представляющее применение заданной лямбда-функции к данным аргументам.

Invoke(EdmFunction, DbExpression[])

Создает выражение DbFunctionExpression, представляющее вызов заданной функции с определенными аргументами.

Invoke(EdmFunction, IEnumerable<DbExpression>)

Создает выражение DbFunctionExpression, представляющее вызов заданной функции с определенными аргументами.

IsEmpty(DbExpression)

Создает новое выражение DbIsEmptyExpression, определяющее, является ли заданный аргумент набора пустым набором.

IsNull(DbExpression)

Создает новое выражение DbIsNullExpression, определяющее, имеет ли заданный аргумент значение NULL.

IsOf(DbExpression, TypeUsage)

Создает новое выражение DbIsOfExpression, определяющее, принадлежит ли заданный аргумент определенному типу или подтипу.

IsOfOnly(DbExpression, TypeUsage)

Создает новое выражение DbIsOfExpression, определяющее, принадлежит ли заданный аргумент определенному типу (только этому типу, не подтипу).

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.

Lambda(DbExpression, DbVariableReferenceExpression[])

Создает DbLambda с заданной реализацией встроенной лямбда-функции и формальными параметрами.

Lambda(DbExpression, IEnumerable<DbVariableReferenceExpression>)

Создает DbLambda с заданной реализацией встроенной лямбда-функции и формальными параметрами.

LeftOuterJoin(DbExpression, DbExpression, Func<DbExpression,DbExpression,DbExpression>)

Создает новое выражение DbJoinExpression, которое объединяет наборы, заданные левым и правым выражениями, при указанном условии объединения, используя LeftOuterJoin в качестве DbExpressionKind.

LeftOuterJoin(DbExpressionBinding, DbExpressionBinding, DbExpression)

Создает новое выражение DbJoinExpression, которое объединяет наборы, заданные левой и правой привязками выражения, при указанном условии объединения, используя LeftOuterJoin в качестве DbExpressionKind.

LessThan(DbExpression, DbExpression)

Создает новое выражение DbComparisonExpression, определяющее, верно ли, что левый аргумент меньше правого аргумента.

LessThanOrEqual(DbExpression, DbExpression)

Создает новое выражение DbComparisonExpression, определяющее, верно ли, что левый аргумент меньше или равен правому аргументу.

Like(DbExpression, DbExpression)

Создает новое выражение DbLikeExpression, которое сравнивает указанную входную строку с заданным шаблоном.

Like(DbExpression, DbExpression, DbExpression)

Создает новое выражение DbLikeExpression, которое сравнивает указанную входную строку с заданным шаблоном, используя необязательную строку escape-символов.

Limit(DbExpression, DbExpression)

Создает новый объект DbLimitExpression, ограничивающий число элементов в коллекции аргументов заданным пределом подсчета. Связанные результаты не включаются в выходные данные.

Minus(DbExpression, DbExpression)

Создает новое выражение DbArithmeticExpression, которое вычитает правый аргумент из левого аргумента.

Modulo(DbExpression, DbExpression)

Создает новое выражение DbArithmeticExpression, вычисляющее остаток при делении левого аргумента на правый аргумент.

Multiply(DbExpression, DbExpression)

Создает новое выражение DbArithmeticExpression, которое умножает левый аргумент на правый аргумент.

Navigate(DbExpression, RelationshipEndMember, RelationshipEndMember)

Создает новое выражение DbRelationshipNavigationExpression, представляющее переход по композиции или отношению ассоциации.

Navigate(RelationshipType, String, String, DbExpression)

Создает новое выражение DbRelationshipNavigationExpression, представляющее переход по композиции или отношению ассоциации.

Negate(DbExpression)

Создает новое выражение DbArithmeticExpression, которое отрицает значение аргумента.

New(TypeUsage, DbExpression[])

Создает новый экземпляр DbNewInstanceExpression. Если тип аргумента является типом коллекции, аргументы задают элементы коллекции. В противном случае аргументы используются как значения свойств или столбцов в новом экземпляре.

New(TypeUsage, IEnumerable<DbExpression>)

Создает новый экземпляр DbNewInstanceExpression. Если тип аргумента является типом коллекции, аргументы задают элементы коллекции. В противном случае аргументы используются как значения свойств или столбцов в новом экземпляре.

NewCollection(DbExpression[])

Создает новое выражение DbNewInstanceExpression, создающее коллекцию, которая содержит указанные элементы. Тип коллекции основывается на общем типе элементов. Если не существует общего типа элементов, создается исключение.

NewCollection(IEnumerable<DbExpression>)

Создает новое выражение DbNewInstanceExpression, создающее коллекцию, которая содержит указанные элементы. Тип коллекции основывается на общем типе элементов. Если не существует общего типа элементов, создается исключение.

NewEmptyCollection(TypeUsage)

Создает новое выражение DbNewInstanceExpression, создающее пустую коллекцию заданного типа.

NewRow(IEnumerable<KeyValuePair<String,DbExpression>>)

Создает новое выражение DbNewInstanceExpression, создающее строку с указанными именами столбцов и значениями, которые заданы как выражения.

Not(DbExpression)

Создает выражение DbNotExpression, выполняющее логическое отрицание заданного аргумента.

NotEqual(DbExpression, DbExpression)

Создает новое выражение DbComparisonExpression, проверяющее, неравенство левого и правого аргументов.

Null(TypeUsage)

Создает новое выражение DbNullExpression, представляющее типизированное значение NULL.

OfType(DbExpression, TypeUsage)

Создает новое выражение DbOfTypeExpression, создающее набор элементов заданного типа из указанного входного набора.

OfTypeOnly(DbExpression, TypeUsage)

Создает новое выражение DbOfTypeExpression, создающее набор элементов строго заданного типа из указанного входного набора.

Or(DbExpression, DbExpression)

Создает объект DbOrExpression, выполняющий логическую операцию ИЛИ для левого и правого аргументов.

OrderBy(DbExpression, Func<DbExpression,DbExpression>)

Создает новое выражение DbSortExpression, сортирующее заданный входной набор с использованием указанного ключа сортировки в порядке возрастания и с параметрами сортировки по умолчанию.

OrderBy(DbExpression, Func<DbExpression,DbExpression>, String)

Создает новое выражение DbSortExpression, сортирующее заданный входной набор с использованием указанного ключа сортировки в порядке возрастания и с заданными параметрами сортировки.

OrderByDescending(DbExpression, Func<DbExpression,DbExpression>)

Создает новое выражение DbSortExpression, сортирующее заданный входной набор с использованием указанного ключа сортировки в порядке убывания и с параметрами сортировки по умолчанию.

OrderByDescending(DbExpression, Func<DbExpression,DbExpression>, String)

Создает новое выражение DbSortExpression, сортирующее заданный входной набор с использованием указанного ключа сортировки в порядке убывания и с заданными параметрами сортировки.

OuterApply(DbExpression, Func<DbExpression,KeyValuePair<String,DbExpression>>)

Создает новое выражение DbApplyExpression, которое вычисляет указанное выражение apply один раз для каждого из элементов входного набора, создавая на выходе коллекцию строк с соответствующими столбцами input и apply. В строках, для которых при вычислении выражения apply получается пустой набор, столбец apply имеет значение null.

OuterApply(DbExpressionBinding, DbExpressionBinding)

Создает новое выражение DbApplyExpression, которое вычисляет указанное выражение apply один раз для каждого из элементов входного набора, создавая на выходе коллекцию строк с соответствующими столбцами input и apply. В строках, для которых при вычислении выражения apply получается пустой набор, столбец apply имеет значение null.

Parameter(TypeUsage, String)

Создает новое выражение DbParameterReferenceExpression, ссылающееся на параметр с заданными именем и типом.

Plus(DbExpression, DbExpression)

Создает новое выражение DbArithmeticExpression, прибавляющее к левому аргументу правый.

Project(DbExpressionBinding, DbExpression)

Создает новое выражение DbProjectExpression, создающее проекцию заданного выражения на данном входном наборе.

Property(DbExpression, EdmProperty)

Создает новое выражение DbPropertyExpression, представляющее получение указанного свойства.

Property(DbExpression, NavigationProperty)

Создает новое выражение DbPropertyExpression, представляющее получение указанного свойства навигации.

Property(DbExpression, RelationshipEndMember)

Создает новое выражение DbPropertyExpression, представляющее получение указанного конечного элемента отношения.

Property(DbExpression, String)

Создает новое выражение DbPropertyExpression, представляющее получение свойства экземпляра с заданным именем из указанного экземпляра.

RefFromKey(EntitySet, DbExpression)

Создает новое выражение DbRefExpression, которое кодирует ссылку на определенную сущность на основе значений ключей.

RefFromKey(EntitySet, DbExpression, EntityType)

Создает новое выражение DbRefExpression, которое кодирует ссылку на определенную сущность на основе значений ключей.

Scan(EntitySetBase)

Создает новое выражение DbScanExpression, ссылающееся на заданную сущность или набор отношений.

Select<TProjection>(DbExpression, Func<DbExpression,TProjection>)

Создает новое выражение DbProjectExpression, выбирающее заданное выражение на данном входном наборе.

SelectMany(DbExpression, Func<DbExpression,DbExpression>)

Создает новое выражение DbApplyExpression, которое вычисляет указанное выражение apply один раз для каждого из элементов входного набора, создавая на выходе коллекцию строк с соответствующими столбцами input и apply. Строки, для которых результатом выражения apply стало пустое множество, не включаются. Затем создается выражение DbProjectExpression, выбирающее столбец apply из каждой строки, формируя таким образом коллекцию результатов apply.

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

Создает новое выражение DbApplyExpression, которое вычисляет указанное выражение apply один раз для каждого из элементов входного набора, создавая на выходе коллекцию строк с соответствующими столбцами input и apply. Строки, для которых результатом выражения apply стало пустое множество, не включаются. Затем создается выражение DbProjectExpression, выбирающее указанный selector из каждой строки, формируя таким образом коллекцию результатов.

Skip(DbExpressionBinding, IEnumerable<DbSortClause>, DbExpression)

Создает новое выражение DbSkipExpression, которое сортирует данный входной набор согласно заданным правилам сортировки, прежде чем будет пропущено указанное число элементов.

Skip(DbSortExpression, DbExpression)

Создает новое выражение DbSkipExpression, пропускающее заданное число элементов данного отсортированного входного набора.

Sort(DbExpressionBinding, IEnumerable<DbSortClause>)

Создает новое выражение DbSortExpression, сортирующее заданный входной набор с использованием указанных правил сортировки.

Take(DbExpression, DbExpression)

Создает новый объект DbLimitExpression, ограничивающий число элементов в коллекции аргументов заданным пределом подсчета. Связанные результаты не включаются в выходные данные.

ThenBy(DbSortExpression, Func<DbExpression,DbExpression>)

Создает новый DbSortExpression объект с порядком сортировки, который включает порядок сортировки заданного входного набора порядка вместе с указанным ключом сортировки в порядке сортировки по возрастанию и с параметрами сортировки по умолчанию.

ThenBy(DbSortExpression, Func<DbExpression,DbExpression>, String)

Создает новый DbSortExpression объект с порядком сортировки, который включает порядок сортировки заданного входного набора порядка вместе с заданным ключом сортировки в порядке сортировки по возрастанию и с заданными параметрами сортировки.

ThenByDescending(DbSortExpression, Func<DbExpression,DbExpression>)

Создает новый DbSortExpression объект с порядком сортировки, который включает порядок сортировки заданного входного набора данных порядка вместе с указанным ключом сортировки в порядке сортировки по убыванию и параметрами сортировки по умолчанию.

ThenByDescending(DbSortExpression, Func<DbExpression,DbExpression>, String)

Создает новый DbSortExpression объект с порядком сортировки, который включает порядок сортировки заданного входного набора порядка вместе с заданным ключом сортировки в порядке сортировки по убыванию и с заданными параметрами сортировки.

ToSortClause(DbExpression)

Создает новый объект DbSortClause с порядком сортировки по возрастанию и параметрами сортировки по умолчанию.

ToSortClause(DbExpression, String)

Создает новый объект DbSortClause с порядком сортировки по возрастанию и заданными параметрами сортировки.

ToSortClauseDescending(DbExpression)

Создает новый объект DbSortClause с порядком сортировки по убыванию и параметрами сортировки по умолчанию.

ToSortClauseDescending(DbExpression, String)

Создает новый объект DbSortClause с порядком сортировки по убыванию и заданными параметрами сортировки.

TreatAs(DbExpression, TypeUsage)

Создает новый экземпляр DbTreatExpression.

UnaryMinus(DbExpression)

Создает новое выражение DbArithmeticExpression, которое отрицает значение аргумента.

Union(DbExpression, DbExpression)

Создает новый объект DbExpression, вычисляющий объединение левого и правого аргументов набора, при этом повторяющиеся элементы удаляются.

UnionAll(DbExpression, DbExpression)

Создает новый объект DbUnionAllExpression, вычисляющий объединение левого и правого аргументов набора, не удаляя повторяющиеся элементы.

Variable(TypeUsage, String)

Создает новое выражение DbVariableReferenceExpression, ссылающееся на переменную с заданными именем и типом.

Where(DbExpression, Func<DbExpression,DbExpression>)

Создает новое выражение DbFilterExpression, фильтрующее элементы заданного входного набора с использованием заданного предиката.

Применяется к