DbRawSqlQuery<TElement> 类

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

表示非实体的一个 SQL 查询,该查询从 DbContext 创建并通过该上下文中的连接来执行。 此类的实例是从 Database 实例中获取的。 创建此对象时不会执行该查询;只要枚举该查询,该查询就会执行(例如,使用 foreach)。 实体的 SQL 查询是使用 SqlQuery(String, Object[]) 创建的。 请参见 DbRawSqlQuery 了解此类的非泛型版本。

继承层次结构

System.Object
  System.Data.Entity.Infrastructure.DbRawSqlQuery<TElement>
    System.Data.Entity.Infrastructure.DbSqlQuery<TEntity>

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

语法

声明
<SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")> _
Public Class DbRawSqlQuery(Of TElement) _
    Implements IEnumerable(Of TElement), IEnumerable,  _
    IListSource, IDbAsyncEnumerable(Of TElement), IDbAsyncEnumerable
用法
Dim instance As DbRawSqlQuery(Of TElement)
[SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")]
public class DbRawSqlQuery<TElement> : IEnumerable<TElement>, 
    IEnumerable, IListSource, IDbAsyncEnumerable<TElement>, IDbAsyncEnumerable
[SuppressMessageAttribute(L"Microsoft.Naming", L"CA1710:IdentifiersShouldHaveCorrectSuffix")]
generic<typename TElement>
public ref class DbRawSqlQuery : IEnumerable<TElement>, 
    IEnumerable, IListSource, IDbAsyncEnumerable<TElement>, IDbAsyncEnumerable
[<SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")>]
type DbRawSqlQuery<'TElement> =  
    class 
        interface IEnumerable<'TElement>
        interface IEnumerable 
        interface IListSource 
        interface IDbAsyncEnumerable<'TElement>
        interface IDbAsyncEnumerable 
    end
JScript does not support generic types and methods.

类型参数

  • TElement
    查询所返回元素的类型。

DbRawSqlQuery<TElement> 类型公开以下成员。

方法

  名称 描述
公共方法 AllAsync(Func<TElement, Boolean>) 异步确定查询的所有元素是否满足条件。
公共方法 AllAsync(Func<TElement, Boolean>, CancellationToken) 异步确定查询的所有元素是否满足条件。
公共方法 AnyAsync() 异步确定查询是否包含任何元素。
公共方法 AnyAsync(Func<TElement, Boolean>) 异步确定查询的任何元素是否满足条件。
公共方法 AnyAsync(CancellationToken) 异步确定查询是否包含任何元素。
公共方法 AnyAsync(Func<TElement, Boolean>, CancellationToken) 异步确定查询的任何元素是否满足条件。
公共方法 AsStreaming 已过时。 返回将流式处理结果而非缓存它的新查询。
公共方法 ContainsAsync(TElement) 通过使用默认的相等比较器异步确定查询是否包含指定的元素。
公共方法 ContainsAsync(TElement, CancellationToken) 通过使用默认的相等比较器异步确定查询是否包含指定的元素。
公共方法 CountAsync() 异步返回查询中的元素数。
公共方法 CountAsync(Func<TElement, Boolean>) 异步返回满足条件的查询中的元素数。
公共方法 CountAsync(CancellationToken) 异步返回查询中的元素数。
公共方法 CountAsync(Func<TElement, Boolean>, CancellationToken) 异步返回满足条件的查询中的元素数。
公共方法 Equals 确定当前查询是否等于指定的查询。 (重写 Object.Equals(Object)。)
受保护的方法 Finalize (继承自 Object。)
公共方法 FirstAsync() 异步返回查询的第一个元素。
公共方法 FirstAsync(Func<TElement, Boolean>) 异步返回满足指定条件的查询的第一个元素。
公共方法 FirstAsync(CancellationToken) 异步返回查询的第一个元素。
公共方法 FirstAsync(Func<TElement, Boolean>, CancellationToken) 异步返回满足指定条件的查询的第一个元素。
公共方法 FirstOrDefaultAsync() 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。
公共方法 FirstOrDefaultAsync(Func<TElement, Boolean>) 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。
公共方法 FirstOrDefaultAsync(CancellationToken) 异步返回查询的第一个元素;如果查询结果不包含任何元素,则返回默认值。
公共方法 FirstOrDefaultAsync(Func<TElement, Boolean>, CancellationToken) 异步返回满足指定条件的查询的第一个元素;如果未找到这样的元素,则返回默认值。
公共方法 ForEachAsync(Action<TElement>) 异步枚举查询结果并对每个元素执行指定的操作。
公共方法 ForEachAsync(Action<TElement>, CancellationToken) 异步枚举查询结果并对每个元素执行指定的操作。
公共方法 GetEnumerator 返回 IEnumerator<T>,其枚举的对象将针对数据库执行 SQL 查询。
公共方法 GetHashCode 返回此查询的哈希函数。 (重写 Object.GetHashCode()。)
公共方法 GetType 获取当前查询的类型。
公共方法 LongCountAsync() 异步返回表示查询中的总元素数的 Int64
公共方法 LongCountAsync(Func<TElement, Boolean>) 异步返回表示满足条件的查询中元素数的 Int64
公共方法 LongCountAsync(CancellationToken) 异步返回表示查询中的总元素数的 Int64
公共方法 LongCountAsync(Func<TElement, Boolean>, CancellationToken) 异步返回表示满足条件的查询中元素数的 Int64
公共方法 MaxAsync() 异步返回查询的最大值。
公共方法 MaxAsync(CancellationToken) 异步返回查询的最大值。
受保护的方法 MemberwiseClone (继承自 Object。)
公共方法 MinAsync() 异步返回查询的最小值。
公共方法 MinAsync(CancellationToken) 异步返回查询的最小值。
公共方法 SingleAsync() 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。
公共方法 SingleAsync(Func<TElement, Boolean>) 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。
公共方法 SingleAsync(CancellationToken) 异步返回查询的唯一元素;如果该查询结果并非恰好包含一个元素,则引发异常。
公共方法 SingleAsync(Func<TElement, Boolean>, CancellationToken) 异步返回满足指定条件的查询的唯一元素;如果有多个这样的元素,则引发异常。
公共方法 SingleOrDefaultAsync() 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。
公共方法 SingleOrDefaultAsync(Func<TElement, Boolean>) 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。
公共方法 SingleOrDefaultAsync(CancellationToken) 异步返回序列中的唯一元素;如果该序列为空,则返回默认值;如果该序列包含多个元素,此方法将引发异常。
公共方法 SingleOrDefaultAsync(Func<TElement, Boolean>, CancellationToken) 异步返回满足指定条件的查询的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常。
公共方法 ToArrayAsync() 通过异步枚举从查询创建数组。
公共方法 ToArrayAsync(CancellationToken) 通过异步枚举从查询创建数组。
公共方法 ToDictionaryAsync<TKey>(Func<TElement, TKey>) 通过异步枚举它根据指定的键选择器函数从查询创建 Dictionary<TKey, TValue>
公共方法 ToDictionaryAsync<TKey>(Func<TElement, TKey>, IEqualityComparer<TKey>) 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 Dictionary<TKey, TValue>
公共方法 ToDictionaryAsync<TKey>(Func<TElement, TKey>, CancellationToken) 通过异步枚举它根据指定的键选择器函数从查询创建 Dictionary<TKey, TValue>
公共方法 ToDictionaryAsync<TKey>(Func<TElement, TKey>, IEqualityComparer<TKey>, CancellationToken) 通过异步枚举它根据指定的键选择器函数和比较器从查询创建 Dictionary<TKey, TValue>
公共方法 ToDictionaryAsync<TKey, TResult>(Func<TElement, TKey>, Func<TElement, TResult>) 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 Dictionary<TKey, TValue>
公共方法 ToDictionaryAsync<TKey, TResult>(Func<TElement, TKey>, Func<TElement, TResult>, IEqualityComparer<TKey>) 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 Dictionary<TKey, TValue>
公共方法 ToDictionaryAsync<TKey, TResult>(Func<TElement, TKey>, Func<TElement, TResult>, CancellationToken) 通过异步枚举它根据指定的键选择器函数和元素选择器函数从查询创建 Dictionary<TKey, TValue>
公共方法 ToDictionaryAsync<TKey, TResult>(Func<TElement, TKey>, Func<TElement, TResult>, IEqualityComparer<TKey>, CancellationToken) 通过异步枚举它根据指定的键选择器函数、比较器和元素选择器函数从查询创建 Dictionary<TKey, TValue>
公共方法 ToListAsync() 通过异步枚举它从查询创建 List<T>
公共方法 ToListAsync(CancellationToken) 通过异步枚举它从查询创建 List<T>
公共方法 ToString 返回一个包含 SQL 字符串的 String,该字符串是在创建查询时设置的。不包括参数。 (重写 Object.ToString()。)

顶部

显式接口实现  

  名称 描述
显式接口实现私有属性 IListSource.ContainsListCollection 返回 false。
显式接口实现私有方法 IEnumerable.GetEnumerator 返回 IEnumerator,其枚举的对象将针对数据库执行 SQL 查询。
显式接口实现私有方法 IListSource.GetList 引发一个异常,该异常指示不支持直接绑定到存储查询。
显式接口实现私有方法 IDbAsyncEnumerable.GetAsyncEnumerator 返回 IDbAsyncEnumerable,其枚举的对象将针对数据库执行 SQL 查询。
显式接口实现私有方法 IDbAsyncEnumerable<TElement>.GetAsyncEnumerator 返回 IDbAsyncEnumerator<T>,其枚举的对象将针对数据库执行 SQL 查询。

顶部

线程安全

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

请参阅

参考

System.Data.Entity.Infrastructure 命名空间