DbExpressionBuilder 类

定义

提供一个用于构造 DbExpression 的 API,并且允许该 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>)

使用 InnerJoin 作为 DbExpressionKind ,在指定的联接条件上创建一个新的 DbJoinExpression ,它联接由左表达式和右表达式指定的集。

InnerJoin(DbExpressionBinding, DbExpressionBinding, DbExpression)

创建一个新的 DbJoinExpression ,它使用 InnerJoin 作为 DbExpressionKind ,在指定的联接条件上联接由左表达式绑定和右表达式绑定指定的集。

Intersect(DbExpression, DbExpression)

创建一个新的 DbIntersectExpression,它计算左侧集参数和右侧集参数的交集。

Invoke(DbLambda, DbExpression[])

创建一个新的 DbLambdaExpression,它表示对给定参数应用指定的 lambda 函数。

Invoke(DbLambda, IEnumerable<DbExpression>)

创建一个新的 DbLambdaExpression,它表示对给定参数应用指定的 lambda 函数。

Invoke(EdmFunction, DbExpression[])

使用给定参数创建表示指定函数的调用的新 DbFunctionExpression

Invoke(EdmFunction, IEnumerable<DbExpression>)

使用给定参数创建表示指定函数的调用的新 DbFunctionExpression

IsEmpty(DbExpression)

创建一个新的 DbIsEmptyExpression,它确定指定的集参数是否为空集。

IsNull(DbExpression)

创建一个新的 DbIsNullExpression,它确定指定的参数是否为 。

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[])

使用指定的内联 Lambda 函数实现和形参创建 DbLambda

Lambda(DbExpression, IEnumerable<DbVariableReferenceExpression>)

使用指定的内联 Lambda 函数实现和形参创建 DbLambda

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

使用 LeftOuterJoin 作为 DbExpressionKind ,在指定的联接条件上创建联接左表达式和右表达式指定的集的新 DbJoinExpression

LeftOuterJoin(DbExpressionBinding, DbExpressionBinding, DbExpression)

创建一个新的 DbJoinExpression ,它使用 LeftOuterJoin 作为 DbExpressionKind ,在指定的联接条件上联接由左表达式绑定和右表达式绑定指定的集。

LessThan(DbExpression, DbExpression)

创建一个新的 DbComparisonExpression,它确定左侧参数是否小于右侧参数。

LessThanOrEqual(DbExpression, DbExpression)

创建一个新的 DbComparisonExpression,它确定左侧参数是否小于或等于右侧参数。

Like(DbExpression, DbExpression)

创建一个新的 DbLikeExpression,它将指定的输入字符串与给定的模式进行比较。

Like(DbExpression, DbExpression, DbExpression)

创建一个新的 DbLikeExpression,它使用可选转义字符串将指定的输入字符串与给定的模式进行比较。

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 表达式,生成具有相应输入和应用列的行集合。 应用的行的计算结果为空集,其应用列值为 null。

OuterApply(DbExpressionBinding, DbExpressionBinding)

创建一个新的 , DbApplyExpression 该表达式为给定输入集的每个元素计算一次给定的 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 表达式,生成具有相应输入和应用列的行集合。 不包括计算结果为空集的行。 然后创建一个 DbProjectExpression ,从每一行中选择应用列,生成应用结果的整体集合。

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

创建一个新的 , DbApplyExpression 该表达式为给定输入集的每个元素计算一次给定的 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,它使用指定的谓词筛选给定输入集中的元素。

适用于