Share via


DbSqlQuery 類別

[此頁面專屬於 Entity Framework 第 6 版。最新版本可從 'Entity Framework' NuGet 套件取得。如需 Entity Framework 的詳細資訊,請參閱 msdn.com/data/ef。]

表示實體的 SQL 查詢,該查詢是從 DbContext 建立而且會使用該內容中的連接來執行。 此類別的執行個體會從實體類型的 DbSet 執行個體取得。 建立此物件時不會執行此查詢,每當列舉此查詢時便會執行,例如,藉由使用 foreach。 非實體的 SQL 查詢會使用 SqlQuery(Type, String, Object[]) 加以建立。 請參閱 DbSqlQuery<TEntity> 以取得此類別的泛型版本。

繼承階層

System.Object
  System.Data.Entity.Infrastructure.DbRawSqlQuery
    System.Data.Entity.Infrastructure.DbSqlQuery

命名空間:  System.Data.Entity.Infrastructure
組件:  EntityFramework (在 EntityFramework.dll 中)

語法

'宣告
<SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")> _
<SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")> _
Public Class DbSqlQuery _
    Inherits DbRawSqlQuery
'用途
Dim instance As DbSqlQuery
[SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")]
[SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")]
public class DbSqlQuery : DbRawSqlQuery
[SuppressMessageAttribute(L"Microsoft.Design", L"CA1010:CollectionsShouldImplementGenericInterface")]
[SuppressMessageAttribute(L"Microsoft.Naming", L"CA1710:IdentifiersShouldHaveCorrectSuffix")]
public ref class DbSqlQuery : public DbRawSqlQuery
[<SuppressMessageAttribute("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")>]
[<SuppressMessageAttribute("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix")>]
type DbSqlQuery =  
    class 
        inherit DbRawSqlQuery 
    end
public class DbSqlQuery extends DbRawSqlQuery

DbSqlQuery 類型會公開下列成員。

建構函式

  名稱 描述
受保護的方法 DbSqlQuery 從將要做為 SqlQuery(String, Object[]) 的測試複本使用之衍生類型的建構函式呼叫時,建立 DbSqlQuery 的執行個體。供測試複本使用的方法和屬性必須由測試複本實作,唯獨預設實作不執行任何作業的 AsNoTracking 及 AsStreaming 除外。

靠上

方法

  名稱 描述
公用方法 AsNoTracking 傳回新的查詢,其中查詢的結果將不會由關聯的 DbContext 所追蹤。
公用方法 AsStreaming 已過時。 傳回會串流結果而非緩衝處理的新查詢。
公用方法 Equals 判斷指定的物件是否等於目前的執行個體。 (覆寫 DbRawSqlQuery.Equals(Object)。)
受保護的方法 Finalize (繼承自 Object)。
公用方法 ForEachAsync(Action<Object>) 非同步列舉查詢結果,並針對每個項目執行指定動作。 (繼承自 DbRawSqlQuery)。
公用方法 ForEachAsync(Action<Object>, CancellationToken) 非同步列舉查詢結果,並針對每個項目執行指定動作。 (繼承自 DbRawSqlQuery)。
公用方法 GetEnumerator 傳回 IEnumerator,其在列舉時會對資料庫執行 SQL 查詢。 (繼承自 DbRawSqlQuery)。
公用方法 GetHashCode 傳回目前執行個體的雜湊碼。 (覆寫 DbRawSqlQuery.GetHashCode()。)
公用方法 GetType 取得與此查詢相關聯的類型。
受保護的方法 MemberwiseClone (繼承自 Object)。
公用方法 ToListAsync() 透過列舉以非同步方式從查詢建立 List<T>。 (繼承自 DbRawSqlQuery)。
公用方法 ToListAsync(CancellationToken) 透過列舉以非同步方式從查詢建立 List<T>。 (繼承自 DbRawSqlQuery)。
公用方法 ToString 傳回 String,其中包含建立查詢時所設定的 SQL 字串。不包含參數。 (覆寫 DbRawSqlQuery.ToString()。)

靠上

明確介面實作

  名稱 描述
明確介面實作私用屬性 IListSource.ContainsListCollection 傳回 false。 (繼承自 DbRawSqlQuery)。
明確介面實作私用方法 IListSource.GetList 擲回例外狀況,表示不支援直接繫結至存放區查詢。 (繼承自 DbRawSqlQuery)。
明確介面實作私用方法 IDbAsyncEnumerable.GetAsyncEnumerator 傳回 IDbAsyncEnumerable,其在列舉時會對資料庫執行 SQL 查詢。 (繼承自 DbRawSqlQuery)。

靠上

執行緒安全

這個類型的任何 Public static (在 Visual Basic 中為 Shared) 成員都是安全執行緒。並非所有的執行個體成員都是安全執行緒。

請參閱

參考

System.Data.Entity.Infrastructure 命名空間