ObjectQuery 类

[本页针对的是实体框架版本 6。最新版本以“实体框架”NuGet 包的形式提供。有关实体框架的更多信息,请参见 msdn.com/data/ef。]

此类在对象层实现非类型化的查询。

继承层次结构

System.Object
  System.Data.Entity.Core.Objects.ObjectQuery
    System.Data.Entity.Core.Objects.ObjectQuery<T>

命名空间:  System.Data.Entity.Core.Objects
程序集:  EntityFramework(在 EntityFramework.dll 中)

语法

声明
<SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")> _
<SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")> _
Public MustInherit Class ObjectQuery _
    Implements IOrderedQueryable, IQueryable, IEnumerable, IListSource,  _
    IDbAsyncEnumerable
用法
Dim instance As ObjectQuery
[SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")]
[SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")]
public abstract class ObjectQuery : IOrderedQueryable, 
    IQueryable, IEnumerable, IListSource, IDbAsyncEnumerable
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1010:CollectionsShouldImplementGenericInterface")]
[SuppressMessageAttribute(L"Microsoft.Naming", L"CA1710:IdentifiersShouldHaveCorrectSuffix")]
public ref class ObjectQuery abstract : IOrderedQueryable, 
    IQueryable, IEnumerable, IListSource, IDbAsyncEnumerable
[<AbstractClassAttribute>]
[<SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")>]
[<SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")>]
type ObjectQuery =  
    class 
        interface IOrderedQueryable 
        interface IQueryable 
        interface IEnumerable 
        interface IListSource 
        interface IDbAsyncEnumerable 
    end
public abstract class ObjectQuery implements IOrderedQueryable, IQueryable, IEnumerable, IListSource, IDbAsyncEnumerable

ObjectQuery 类型公开以下成员。

属性

  名称 描述
公共属性 CommandText 返回查询的命令文本。
公共属性 Context 获取与此对象查询相关联的对象上下文。
公共属性 EnablePlanCaching 获取或设置一个值,该值指示是否应缓存查询计划。
公共属性 MergeOption 获取或设置从查询返回的对象添加到对象上下文的方式。
公共属性 Parameters 获取此对象查询的参数集合。
公共属性 Streaming 查询是流式处理还是缓存

顶部

方法

  名称 描述
公共方法 Equals (继承自 Object。)
公共方法 Execute 使用指定合并选项执行非类型化对象查询。
公共方法 ExecuteAsync(MergeOption) 使用指定合并选项异步执行非类型化对象查询。
公共方法 ExecuteAsync(MergeOption, CancellationToken) 使用指定合并选项异步执行非类型化对象查询。
受保护的方法 Finalize (继承自 Object。)
公共方法 GetHashCode (继承自 Object。)
公共方法 GetResultType 返回有关查询的结果类型的信息。
公共方法 GetType (继承自 Object。)
受保护的方法 MemberwiseClone (继承自 Object。)
公共方法 ToString (继承自 Object。)
公共方法 ToTraceString 返回对数据源执行的命令。

顶部

扩展方法 

  名称 描述
公共扩展方法 AsNoTracking 返回一个新查询,其中返回的实体将不会在 DbContextObjectContext 中进行缓存。此方法通过调用基础查询对象的 AsNoTracking 方法来运行。如果基础查询对象没有 AsNoTracking 方法,则调用此方法将不会有任何影响。 (由 QueryableExtensions 定义。)
公共扩展方法 AsStreaming 返回将流式处理结果而非缓存它的新查询。此方法通过调用基础查询对象的 AsStreaming 方法来运行。如果基础查询对象没有 AsStreaming 方法,则调用此方法将不会有任何影响。 (由 QueryableExtensions 定义。)
公共扩展方法 ForEachAsync(Action<Object>) 已重载。 异步枚举查询结果并对每个元素执行指定的操作。 (由 QueryableExtensions 定义。)
公共扩展方法 ForEachAsync(Action<Object>, CancellationToken) 已重载。 异步枚举查询结果并对每个元素执行指定的操作。 (由 QueryableExtensions 定义。)
公共扩展方法 Include 指定要包括在查询结果中的相关对象。 (由 QueryableExtensions 定义。)
公共扩展方法 Load 枚举服务器查询等查询,例如 DbSet<TEntity>ObjectSet<TEntity>ObjectQuery<T> 的查询,以及查询结果将加载到关联的 DbContextObjectContext 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 (由 QueryableExtensions 定义。)
公共扩展方法 LoadAsync() 已重载。 异步枚举服务器查询等查询,例如 DbSet<TEntity>ObjectSet<TEntity>ObjectQuery<T> 的查询,以及查询结果将加载到关联的 DbContextObjectContext 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 (由 QueryableExtensions 定义。)
公共扩展方法 LoadAsync(CancellationToken) 已重载。 异步枚举服务器查询等查询,例如 DbSet<TEntity>ObjectSet<TEntity>ObjectQuery<T> 的查询,以及查询结果将加载到关联的 DbContextObjectContext 或客户端上的其他缓存中的其他查询。这等效于调用 ToList 然后丢弃该列表,而不会产生实际创建该列表的开销。 (由 QueryableExtensions 定义。)
公共扩展方法 ToListAsync() 已重载。 通过异步枚举从 IQueryable 创建 List<T>。 (由 QueryableExtensions 定义。)
公共扩展方法 ToListAsync(CancellationToken) 已重载。 通过异步枚举从 IQueryable 创建 List<T>。 (由 QueryableExtensions 定义。)

顶部

显式接口实现  

  名称 描述
显式接口实现私有属性 IListSource.ContainsListCollection 获取一个值,该值指示此查询是否包含查询对象的集合。
显式接口实现私有属性 IQueryable.ElementType 获取此查询实例的结果元素类型。
显式接口实现私有属性 IQueryable.Expression 获取描述此查询的表达式。对于使用 LINQ 生成器模式生成的查询,会返回完全 LINQ 表达式树;否则,返回包装此查询的常量表达式。请注意,默认表达式不进行缓存。这允许用户区分 LINQ 和 Entity-SQL 查询。
显式接口实现私有方法 IEnumerable.GetEnumerator 返回一个循环访问集合的枚举器。
显式接口实现私有方法 IListSource.GetList 返回 IList 形式的集合用于数据绑定。
显式接口实现私有属性 IQueryable.Provider 获取与此查询实例关联的 IQueryProvider
显式接口实现私有方法 IDbAsyncEnumerable.GetAsyncEnumerator 返回 IDbAsyncEnumerator,被枚举时它将针对数据库执行给定的 SQL 查询。

顶部

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

请参阅

参考

System.Data.Entity.Core.Objects 命名空间