DataTableReader 類別

定義

DataTableReader 取得一或多個 DataTable 物件的內容,並以一或多個唯讀、正向的結果集形式呈現。

public ref class DataTableReader sealed : System::Data::Common::DbDataReader
public sealed class DataTableReader : System.Data.Common.DbDataReader
type DataTableReader = class
    inherit DbDataReader
Public NotInheritable Class DataTableReader
Inherits DbDataReader
繼承

備註

DataTableReader 運作方式與其他資料讀取器類似,例如, SqlDataReader但 允許 DataTableReader 在 中遍 DataTable歷列。 換句話說,它允許在快取中反覆迭代資料列。 快取資料可在 啟動 DataTableReader 時修改,讀取器會自動維持其位置。

當你從 建立 DataTableDataTableReader,結果DataTableReader物件包含一個與原始資料相同的DataTable結果集,除了標記為刪除的列外。 欄位的出現順序與原始 DataTable相同。 回傳結果的結構在結構與資料上與原始 DataTable完全相同。 由呼叫CreateDataReader物件方法DataSet所建立的 A DataTableReader 包含多個結果集,且該DataSet物件包含多個資料表。 結果的順序與DataTable該物件中的DataTableCollectionDataSet物件相同。

回傳的結果集僅包含每個 DataRow版本的當前版本;標記為刪除的列會被跳過。

提供 DataTableReader 一個穩定的迭代器;也就是說,若在迭代過程中修改底層集合大小,該內容 DataTableReader 不會失效。 例如,若在迭代過程中刪除或移除集合中的 Rows 一列或多列,當前位置 DataTableReader 會被適當維持,且不會使迭代器失效。

建構函式

名稱 Description
DataTableReader(DataTable)

利用所提供DataTable的資料初始化類別的新DataTableReader實例。

DataTableReader(DataTable[])

使用提供的物件陣列DataTable初始化該DataTableReader類別的新實例。

屬性

名稱 Description
Depth

當前列 DataTableReader的巢狀深度。

FieldCount

回傳當前列的欄位數。

HasRows

會得到一個值,表示是否 DataTableReader 包含一列或多列。

IsClosed

會得到一個表示是否 DataTableReader 封閉的值。

Item[Int32]

取得指定資料行的原生格式,指定資料行序數的值。

Item[String]

取得指定數據行名稱的原生格式指定數據行的值。

RecordsAffected

取得執行 SQL 陳述式時插入、變更或刪除的列數。

VisibleFieldCount

取得中未被隱藏的欄位 DbDataReader 數量。

(繼承來源 DbDataReader)

方法

名稱 Description
Close()

關閉電流 DataTableReader

CloseAsync()

非同步關閉物件 DbDataReader

(繼承來源 DbDataReader)
CreateObjRef(Type)

建立一個物件,包含產生代理伺服器所需的所有相關資訊,用於與遠端物件通訊。

(繼承來源 MarshalByRefObject)
Dispose()

釋放目前類別實例 DbDataReader 所使用的所有資源。

(繼承來源 DbDataReader)
Dispose(Boolean)

釋放 未管理的資源, DbDataReader 並可選擇性地釋放受管理資源。

(繼承來源 DbDataReader)
DisposeAsync()

非同步釋放目前類別實例 DbDataReader 所使用的所有資源。

(繼承來源 DbDataReader)
Equals(Object)

判斷指定的 物件是否等於目前的物件。

(繼承來源 Object)
GetBoolean(Int32)

取得指定欄位的值為 Boolean

GetByte(Int32)

取得指定數據行的值做為位元組。

GetBytes(Int32, Int64, Byte[], Int32, Int32)

從指定欄位偏移開始的位元組串流讀取到緩衝區,作為從指定緩衝區偏移開始的陣列。

GetChar(Int32)

取得指定數據行的值做為字元。

GetChars(Int32, Int64, Char[], Int32, Int32)

會回傳指定欄位的值,作為字元陣列。

GetData(Int32)

回傳所請求欄位的巢狀資料讀取器。

(繼承來源 DbDataReader)
GetDataTypeName(Int32)

取得代表指定欄位資料型態的字串。

GetDateTime(Int32)

取得指定欄位的值作為 DateTime 物件。

GetDbDataReader(Int32)

回傳 DbDataReader 請求欄位序數的物件,該物件可用提供者專屬實作覆寫。

(繼承來源 DbDataReader)
GetDecimal(Int32)

取得指定欄位的值為 Decimal

GetDouble(Int32)

取得欄位值為雙精度浮點數。

GetEnumerator()

回傳一個枚舉器,可用於遍歷項目集合。

GetFieldType(Int32)

取得 Type 那是物件的資料型別。

GetFieldValue<T>(Int32)

取得指定數據行的值做為要求的型別。

(繼承來源 DbDataReader)
GetFieldValueAsync<T>(Int32, CancellationToken)

以異步方式取得指定數據行的值做為要求的型別。

(繼承來源 DbDataReader)
GetFieldValueAsync<T>(Int32)

以異步方式取得指定數據行的值做為要求的型別。

(繼承來源 DbDataReader)
GetFloat(Int32)

取得指定欄位的值為單精度浮點數。

GetGuid(Int32)

取得指定欄位的值作為全域唯一識別碼(GUID)。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetInt16(Int32)

取得指定數據行的值,做為16位帶正負號的整數。

GetInt32(Int32)

取得指定數據行的值,做為32位帶正負號的整數。

GetInt64(Int32)

取得指定數據行的值,做為64位帶正負號的整數。

GetLifetimeService()

取得目前控制此實例生命週期政策的終身服務物件。

(繼承來源 MarshalByRefObject)
GetName(Int32)

取得指定欄位的值為 String

GetOrdinal(String)

取得資料列序數,指定資料行的名稱。

GetProviderSpecificFieldType(Int32)

以提供者特定格式取得指定欄位的類型。

GetProviderSpecificValue(Int32)

以提供者特定格式取得指定欄位的值。

GetProviderSpecificValues(Object[])

為所有欄位 DataTableReader填滿提供的陣列,提供提供者特定的類型資訊。

GetSchemaTable()

回傳描述 欄位元資料DataTable的 aDataTableReader

GetStream(Int32)

取得數據流,以從指定的數據行擷取數據。

(繼承來源 DbDataReader)
GetString(Int32)

取得指定數據行的值做為字串。

GetTextReader(Int32)

取得文字讀取器,以從數據行擷取數據。

(繼承來源 DbDataReader)
GetType()

取得目前實例的 Type

(繼承來源 Object)
GetValue(Int32)

取得指定欄位的本位格式值。

GetValues(Object[])

使用目前數據列的數據行值填入 物件的陣列。

InitializeLifetimeService()

取得一個終身服務物件以控制此實例的終身政策。

(繼承來源 MarshalByRefObject)
IsDBNull(Int32)

會得到一個值,表示該欄位是否包含不存在或缺失的值。

IsDBNullAsync(Int32, CancellationToken)

以異步方式取得值,指出數據行是否包含不存在或遺漏的值。

(繼承來源 DbDataReader)
IsDBNullAsync(Int32)

以異步方式取得值,指出數據行是否包含不存在或遺漏的值。

(繼承來源 DbDataReader)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
MemberwiseClone(Boolean)

建立一個 MarshalByRefObject 目前物件的淺層複製品。

(繼承來源 MarshalByRefObject)
NextResult()

將 推進 DataTableReader 到下一組結果(如有)。

NextResultAsync()

讀取語句批次的結果時,以異步方式將讀取器前進到下一個結果。

(繼承來源 DbDataReader)
NextResultAsync(CancellationToken)

讀取語句批次的結果時,以異步方式將讀取器前進到下一個結果。

(繼承來源 DbDataReader)
Read()

推進到 DataTableReader 下一個紀錄。

ReadAsync()

以異步方式將讀取器前進到結果集中的下一筆記錄。

(繼承來源 DbDataReader)
ReadAsync(CancellationToken)

以異步方式將讀取器前進到結果集中的下一筆記錄。

(繼承來源 DbDataReader)
ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)

明確介面實作

名稱 Description
IDataRecord.GetData(Int32)

關於此成員的描述,請參見 GetData(Int32)

(繼承來源 DbDataReader)

擴充方法

名稱 Description
AsParallel(IEnumerable)

啟用查詢的平行處理。

AsQueryable(IEnumerable)

IEnumerable 轉換成 IQueryable

CanGetColumnSchema(DbDataReader)

會得到一個值,表示 a DbDataReader 是否能取得欄位結構。

Cast<TResult>(IEnumerable)

IEnumerable 的項目轉換成指定的型別。

ConfigureAwait(IAsyncDisposable, Boolean)

設定如何執行從異步可處置專案傳回的工作等候。

GetBoolean(DbDataReader, String)

取得指定之數據行的值做為布爾值。

GetByte(DbDataReader, String)

取得指定數據行的值做為位元組。

GetBytes(DbDataReader, String, Int64, Byte[], Int32, Int32)

從指定欄位從指定索引開始讀取指定數量的位元組,並將其寫入從緩衝區指定位置開始的緩衝區。

GetChar(DbDataReader, String)

以單一字元的形式取得指定欄位的值。

GetChars(DbDataReader, String, Int64, Char[], Int32, Int32)

從指定欄位讀取指定數量的字元,從指定索引開始,並將它們寫入從指定位置開始的緩衝區。

GetColumnSchema(DbDataReader)

取得欄位結構(DbColumn 集合)的 DbDataReader

GetData(DbDataReader, String)

回傳所請求欄位的巢狀資料讀取器。

GetDataTypeName(DbDataReader, String)

取得指定欄位的資料型態名稱。

GetDateTime(DbDataReader, String)

取得指定欄位的值作為 DateTime 物件。

GetDecimal(DbDataReader, String)

取得指定欄位的值為 Decimal

GetDouble(DbDataReader, String)

取得指定欄位的值,為雙精度浮點數。

GetFieldType(DbDataReader, String)

取得指定欄位的資料型態。

GetFieldValue<T>(DbDataReader, String)

取得指定數據行的值做為要求的型別。

GetFieldValueAsync<T>(DbDataReader, String, CancellationToken)

以異步方式取得指定數據行的值做為要求的型別。

GetFloat(DbDataReader, String)

取得指定欄位的值為單精度浮點數。

GetGuid(DbDataReader, String)

取得指定數據行的值,做為全域唯一標識碼 (GUID)。

GetInt16(DbDataReader, String)

取得指定數據行的值,做為16位帶正負號的整數。

GetInt32(DbDataReader, String)

取得指定數據行的值,做為32位帶正負號的整數。

GetInt64(DbDataReader, String)

取得指定數據行的值,做為64位帶正負號的整數。

GetProviderSpecificFieldType(DbDataReader, String)

取得指定之數據行的提供者特定型別。

GetProviderSpecificValue(DbDataReader, String)

取得指定數據行的值,做為提供者特定型別的實例。

GetStream(DbDataReader, String)

取得數據流,以從指定的數據行擷取數據。

GetString(DbDataReader, String)

取得指定欄位的值,作為 的 String實例。

GetTextReader(DbDataReader, String)

取得文字讀取器,以從數據行擷取數據。

GetValue(DbDataReader, String)

取得指定欄位的值,作為 的 Object實例。

IsDBNull(DbDataReader, String)

取得值,這個值表示數據行是否包含不存在或遺漏的值。

IsDBNullAsync(DbDataReader, String, CancellationToken)

以異步方式取得值,指出數據行是否包含不存在或遺漏的值。

OfType<TResult>(IEnumerable)

根據指定的型別篩選 IEnumerable 的專案。

適用於