语言

ObjectQuery<T> 类

定义

ObjectQuery 在对象层实现强类型查询。 查询是使用 Entity-SQL 字符串指定的,可以通过调用 ObjectQuery 声明的基于实体 SQL 的查询生成器方法来创建。

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")]
public class ObjectQuery<T> : System.Data.Entity.Core.Objects.ObjectQuery, System.Collections.Generic.IEnumerable<T>, System.Data.Entity.Infrastructure.IDbAsyncEnumerable<T>, System.Linq.IOrderedQueryable<T>, System.Linq.IQueryable<T>
type ObjectQuery<'T> = class
    inherit ObjectQuery
    interface IOrderedQueryable<'T>
    interface IQueryable<'T>
    interface IOrderedQueryable
    interface IQueryable
    interface seq<'T>
    interface IEnumerable
    interface IDbAsyncEnumerable<'T>
    interface IDbAsyncEnumerable
Public Class ObjectQuery(Of T)
Inherits ObjectQuery
Implements IDbAsyncEnumerable(Of T), IEnumerable(Of T), IOrderedQueryable(Of T), IQueryable(Of T)

类型参数

T

此 ObjectQuery 的结果类型

继承
ObjectQuery<T>
派生
属性
实现

构造函数

名称 说明
ObjectQuery<T>(String, ObjectContext)

使用指定的 Entity SQL 命令作为初始查询创建新 ObjectQuery<T> 实例。

ObjectQuery<T>(String, ObjectContext, MergeOption)

使用指定的 Entity SQL 命令作为初始查询和指定的合并选项创建一个新 ObjectQuery<T> 实例。

属性

名称 说明
CommandText

返回查询的命令文本。

(继承自 ObjectQuery)
Context

获取与此对象查询相关联的对象上下文。

(继承自 ObjectQuery)
EnablePlanCaching

获取或设置一个值,该值指示是否应缓存查询计划。

(继承自 ObjectQuery)
MergeOption

获取或设置从查询返回的对象添加到对象上下文的方式。

(继承自 ObjectQuery)
Name

获取或设置此对象查询的名称。

Parameters

获取此对象查询的参数集合。

(继承自 ObjectQuery)
Streaming

查询是流式处理还是缓冲

(继承自 ObjectQuery)

方法

名称 说明
Distinct()

将查询限制为唯一结果。

Except(ObjectQuery<T>)

此查询生成器方法创建一个新查询,其结果为此查询的所有结果,但也是指定其他查询的一部分的结果除外。

Execute(MergeOption)

使用指定的合并选项执行对象查询。

ExecuteAsync(MergeOption)

使用指定的合并选项异步执行对象查询。

ExecuteAsync(MergeOption, CancellationToken)

使用指定的合并选项异步执行对象查询。

GetResultType()

返回有关查询的结果类型的信息。

(继承自 ObjectQuery)
GroupBy(String, String, ObjectParameter[])

按指定的条件对查询结果进行分组。

Include(String)

指定要包括在查询结果中的相关对象。

Intersect(ObjectQuery<T>)

此查询生成器方法创建一个新查询,其结果为此查询和指定的其他查询的结果。

OfType<TResultType>()

将查询限制为仅包括特定类型的结果。

OrderBy(String, ObjectParameter[])

按指定条件对查询结果进行排序。

Select(String, ObjectParameter[])

将查询结果限制为仅包含在指定投影中定义的属性。

SelectValue<TResultType>(String, ObjectParameter[])

将查询结果限制为仅包含投影中指定的属性。

Skip(String, String, ObjectParameter[])

按指定条件对查询结果进行排序并跳过指定数目的结果。

Top(String, ObjectParameter[])

将查询结果限制为指定的项数。

ToTraceString()

返回对数据源执行的命令。

(继承自 ObjectQuery)
Union(ObjectQuery<T>)

此查询生成器方法创建一个新查询,其结果为此查询的所有结果以及其他查询的所有结果,没有重复项 (即,结果) 是唯一的。

UnionAll(ObjectQuery<T>)

此查询生成器方法创建一个新查询,其结果为此查询的所有结果,以及其他查询的所有结果,包括任何重复项 (即结果不一定) 唯一。

Where(String, ObjectParameter[])

将查询限制为包含与指定筛选条件匹配的结果。

显式接口实现

名称 说明
IDbAsyncEnumerable.GetAsyncEnumerator()

返回一个 , IDbAsyncEnumerator 枚举时将对数据库执行给定的 SQL 查询。

(继承自 ObjectQuery)
IDbAsyncEnumerable<T>.GetAsyncEnumerator()

返回一个 , IDbAsyncEnumerator<T> 枚举时将对数据库执行给定的 SQL 查询。

IEnumerable.GetEnumerator()

返回循环访问集合的枚举数。

(继承自 ObjectQuery)
IEnumerable<T>.GetEnumerator()

返回一个 , IEnumerator<T> 枚举时将对数据库执行给定的 SQL 查询。

IListSource.ContainsListCollection

ObjectQuery 在对象层实现强类型查询。 查询是使用 Entity-SQL 字符串指定的,可以通过调用 ObjectQuery 声明的基于实体 SQL 的查询生成器方法来创建。

(继承自 ObjectQuery)
IListSource.GetList()

返回 IList 形式的集合用于数据绑定。

(继承自 ObjectQuery)
IQueryable.ElementType

获取此查询实例的结果元素类型。

(继承自 ObjectQuery)
IQueryable.Expression

获取描述此查询的表达式。 对于使用 LINQ 生成器模式生成的查询,返回完整的 LINQ 表达式树;否则,返回包装此查询的常量表达式。 请注意,默认表达式不进行缓存。 这使我们能够区分 LINQ 和 Entity-SQL 查询。

(继承自 ObjectQuery)
IQueryable.Provider

IQueryProvider获取与此查询实例关联的 。

(继承自 ObjectQuery)

扩展方法

名称 说明
AllAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

异步确定序列的所有元素是否都满足条件。

AllAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

异步确定序列的所有元素是否都满足条件。

AnyAsync<TSource>(IQueryable<TSource>)

异步确定序列是否包含任何元素。

AnyAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

异步确定序列的任何元素是否满足条件。

AnyAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

异步确定序列的任何元素是否满足条件。

AnyAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步确定序列是否包含任何元素。

AsNoTracking<T>(IQueryable<T>)

返回一个新查询,其中返回的实体不会缓存在 或 ObjectContext中DbContext。 此方法通过调用基础查询对象的 AsNoTracking 方法来工作。 如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不起作用。

AsStreaming<T>(IQueryable<T>)
已过时.

返回一个新查询,该查询将流式传输结果,而不是缓冲。 此方法通过调用基础查询对象的 AsStreaming 方法工作。 如果基础查询对象没有 AsStreaming 方法,则调用此方法将不起作用。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Decimal 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Decimal 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Double 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Double 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Int32 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Int32 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Int64 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Int64 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Decimal 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>, CancellationToken)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Decimal 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Double 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>, CancellationToken)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Double 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Int32 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>, CancellationToken)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Int32 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Int64 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>, CancellationToken)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Int64 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Single 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>, CancellationToken)

异步计算通过调用输入序列中每个元素的投影函数获取的可为 Single 空值序列的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Single 的平均值。

AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Single 的平均值。

ContainsAsync<TSource>(IQueryable<TSource>, TSource)

使用默认相等比较器异步确定序列是否包含指定的元素。

ContainsAsync<TSource>(IQueryable<TSource>, TSource, CancellationToken)

使用默认相等比较器异步确定序列是否包含指定的元素。

CountAsync<TSource>(IQueryable<TSource>)

异步返回序列中的元素数。

CountAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

异步返回序列中满足条件的元素数。

CountAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

异步返回序列中满足条件的元素数。

CountAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步返回序列中的元素数。

FirstAsync<TSource>(IQueryable<TSource>)

异步返回序列的第一个元素。

FirstAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

异步返回序列中满足指定条件的第一个元素。

FirstAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

异步返回序列中满足指定条件的第一个元素。

FirstAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步返回序列的第一个元素。

FirstOrDefaultAsync<TSource>(IQueryable<TSource>)

异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。

FirstOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

异步返回序列中满足指定条件的第一个元素,如果未找到此类元素,则返回默认值。

FirstOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

异步返回序列中满足指定条件的第一个元素,如果未找到此类元素,则返回默认值。

FirstOrDefaultAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步返回序列的第一个元素;如果序列不包含任何元素,则返回默认值。

ForEachAsync<T>(IQueryable<T>, Action<T>)

异步枚举查询结果,并针对每个元素执行指定的操作。

ForEachAsync<T>(IQueryable<T>, Action<T>, CancellationToken)

异步枚举查询结果,并针对每个元素执行指定的操作。

Include<T>(IQueryable<T>, String)

指定要包括在查询结果中的相关对象。

Include<T,TProperty>(IQueryable<T>, Expression<Func<T,TProperty>>)

指定要包括在查询结果中的相关对象。

LongCountAsync<TSource>(IQueryable<TSource>)

异步返回一个 Int64 ,它表示序列中的元素总数。

LongCountAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

异步返回一个 , Int64 它表示序列中满足条件的元素数。

LongCountAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

异步返回一个 , Int64 它表示序列中满足条件的元素数。

LongCountAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步返回一个 Int64 ,它表示序列中的元素总数。

MaxAsync<TSource>(IQueryable<TSource>)

异步返回序列的最大值。

MaxAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步返回序列的最大值。

MaxAsync<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>)

对序列的每个元素异步调用投影函数,并返回最大结果值。

MaxAsync<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>, CancellationToken)

对序列的每个元素异步调用投影函数,并返回最大结果值。

MinAsync<TSource>(IQueryable<TSource>)

异步返回序列的最小值。

MinAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步返回序列的最小值。

MinAsync<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>)

对序列的每个元素异步调用投影函数,并返回生成的最小值。

MinAsync<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>, CancellationToken)

对序列的每个元素异步调用投影函数,并返回生成的最小值。

SingleAsync<TSource>(IQueryable<TSource>)

异步返回序列的唯一元素,如果序列中没有确切的元素,则引发异常。

SingleAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

异步返回序列中唯一满足指定条件的元素,如果存在多个此类元素,则引发异常。

SingleAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

异步返回序列中唯一满足指定条件的元素,如果存在多个此类元素,则引发异常。

SingleAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步返回序列的唯一元素,如果序列中没有确切的元素,则引发异常。

SingleOrDefaultAsync<TSource>(IQueryable<TSource>)

异步返回序列的唯一元素,如果序列为空,则返回默认值;如果序列中有多个元素,此方法将引发异常。

SingleOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>)

异步返回序列中满足指定条件的唯一元素;如果不存在此类元素,则返回默认值;如果多个元素满足条件,此方法将引发异常。

SingleOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken)

异步返回序列中满足指定条件的唯一元素;如果不存在此类元素,则返回默认值;如果多个元素满足条件,此方法将引发异常。

SingleOrDefaultAsync<TSource>(IQueryable<TSource>, CancellationToken)

异步返回序列的唯一元素,如果序列为空,则返回默认值;如果序列中有多个元素,此方法将引发异常。

Skip<TSource>(IQueryable<TSource>, Expression<Func<Int32>>)

跳过序列中指定数量的元素,然后返回剩余的元素。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Decimal 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Decimal 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Double 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Double 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Int32 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Int32 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Int64 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Int64 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Decimal 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>, CancellationToken)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Decimal 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Double 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>, CancellationToken)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Double 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Int32 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>, CancellationToken)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Int32 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Int64 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>, CancellationToken)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Int64 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Single 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>, CancellationToken)

异步计算可通过对输入序列的每个元素调用投影函数获取的可为 Single 空值序列的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Single 的总和。

SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>, CancellationToken)

异步计算通过对输入序列的每个元素调用投影函数获取的值序列 Single 的总和。

Take<TSource>(IQueryable<TSource>, Expression<Func<Int32>>)

从序列的开头返回指定数量的相邻元素。

ToArrayAsync<TSource>(IQueryable<TSource>)

通过异步枚举从 创建数组 IQueryable<T> 。

ToArrayAsync<TSource>(IQueryable<TSource>, CancellationToken)

通过异步枚举从 创建数组 IQueryable<T> 。

ToDictionaryAsync<TSource,TKey>(IQueryable<TSource>, Func<TSource,TKey>)

Dictionary<TKey,TValue>通过根据指定的键选择器函数异步枚举它,从 IQueryable<T> 中创建 。

ToDictionaryAsync<TSource,TKey>(IQueryable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>)

Dictionary<TKey,TValue> IQueryable<T>通过根据指定的键选择器函数和比较器异步枚举来创建 。

ToDictionaryAsync<TSource,TKey>(IQueryable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>, CancellationToken)

Dictionary<TKey,TValue> IQueryable<T>通过根据指定的键选择器函数和比较器异步枚举来创建 。

ToDictionaryAsync<TSource,TKey>(IQueryable<TSource>, Func<TSource,TKey>, CancellationToken)

Dictionary<TKey,TValue>通过根据指定的键选择器函数异步枚举它,从 IQueryable<T> 中创建 。

ToDictionaryAsync<TSource,TKey,TElement>(IQueryable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>)

Dictionary<TKey,TValue>通过根据指定的键选择器和元素选择器函数异步枚举它,从 IQueryable<T> 中创建 。

ToDictionaryAsync<TSource,TKey,TElement>(IQueryable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>)

Dictionary<TKey,TValue> IQueryable<T>通过根据指定的键选择器函数、比较器和元素选择器函数异步枚举来创建 。

ToDictionaryAsync<TSource,TKey,TElement>(IQueryable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>, CancellationToken)

Dictionary<TKey,TValue> IQueryable<T>通过根据指定的键选择器函数、比较器和元素选择器函数异步枚举来创建 。

ToDictionaryAsync<TSource,TKey,TElement>(IQueryable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, CancellationToken)

Dictionary<TKey,TValue>通过根据指定的键选择器和元素选择器函数异步枚举它,从 IQueryable<T> 中创建 。

ToListAsync<TSource>(IQueryable<TSource>)

List<T> IQueryable<T>通过异步枚举从 创建 。

ToListAsync<TSource>(IQueryable<TSource>, CancellationToken)

List<T> IQueryable<T>通过异步枚举从 创建 。

适用于