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


DbExpressionBuilder Класс

Определение

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

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")]
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId="Db")]
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 один раз для каждого элемента заданного входного набора, создавая коллекцию строк с соответствующими входными данными и применяемыми столбцами. Строки, для которых применяется пустой набор, не включаются.

CrossApply(DbExpressionBinding, DbExpressionBinding)

Создает новый DbApplyExpression объект, который вычисляет заданное выражение 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, определяющее, верно ли, что левый аргумент больше или равен правому аргументу.

GroupAggregate(DbExpression)

Создает новый DbGroupAggregate объект для указанного аргумента.

GroupBind(DbExpression)

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

GroupBindAs(DbExpression, String, String)

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

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

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

In(DbExpression, IList<DbConstantExpression>)

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

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 один раз для каждого элемента заданного входного набора, создавая коллекцию строк с соответствующими входными столбцами и столбцами apply. Строки, для которых применяется пустой набор, имеют значение apply column, равное NULL.

OuterApply(DbExpressionBinding, DbExpressionBinding)

Создает новый DbApplyExpression объект , который вычисляет заданное выражение apply один раз для каждого элемента заданного входного набора, создавая коллекцию строк с соответствующими входными столбцами и столбцами apply. Строки, для которых применяется пустой набор, имеют значение apply column, равное 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 один раз для каждого элемента заданного входного набора, создавая коллекцию строк с соответствующими входными столбцами и столбцами apply. Строки, для которых применяется пустой набор, не включаются. DbProjectExpression Затем создается объект , который выбирает столбец apply из каждой строки, создавая общую коллекцию результатов применения.

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

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

SetClause(DbExpression, DbExpression)

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

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, фильтрующее элементы заданного входного набора с использованием заданного предиката.

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