SqlCommand.ExecuteReaderAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
ExecuteReaderAsync() |
的異步版本 ExecuteReader() ,它會將 傳送 CommandText 至 Connection 並建置 SqlDataReader 。 例外狀況將經由傳回的 Task 物件回報。 |
ExecuteReaderAsync(CommandBehavior) |
的異步版本 ExecuteReader(CommandBehavior) ,它會將 傳送 CommandText 至 Connection ,並建置 SqlDataReader 。 例外狀況將經由傳回的 Task 物件回報。 |
ExecuteReaderAsync(CancellationToken) |
的異步版本 ExecuteReader() ,它會將 傳送 CommandText 至 Connection 並建置 SqlDataReader 。 取消語彙基元可用於要求在命令逾時之前捨棄作業。 例外狀況將經由傳回的 Task 物件回報。 |
ExecuteReaderAsync(CommandBehavior, CancellationToken) |
的異步版本 ExecuteReader(CommandBehavior) ,它會將 傳送 CommandText 至 Connection ,並建 SqlDataReader 置取消令牌,以要求在命令逾時之前放棄作業。 例外狀況將經由傳回的 Task 物件回報。 |
ExecuteReaderAsync()
的異步版本 ExecuteReader() ,它會將 傳送 CommandText 至 Connection 並建置 SqlDataReader 。 例外狀況將經由傳回的 Task 物件回報。
public:
System::Threading::Tasks::Task<Microsoft::Data::SqlClient::SqlDataReader ^> ^ ExecuteReaderAsync();
public System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader> ExecuteReaderAsync ();
override this.ExecuteReaderAsync : unit -> System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader>
Public Function ExecuteReaderAsync () As Task(Of SqlDataReader)
傳回
表示非同步作業的工作。
例外狀況
當 SqlDbType 設定為 Stream 時Value,會使用 Binary 或 VarBinary 以外的 。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
-或-
SqlDbType當 設定為 TextReader 時Value,使用 Char、NChar、NVarChar、VarChar 或 Xml 以外的 。
-或-
無效的 CommandBehavior 值。
在工作完成前,對同一個執行個體呼叫 ExecuteReaderAsync() 不止一次。
-或-
在串流作業期間已關閉或卸除的 SqlConnection。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
在串流作業期間,或 XmlReaderTextReader 對象中Stream發生錯誤。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
在 Stream 串流作業期間關閉、 XmlReader 或 TextReader 物件。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
備註
如需 .NET Framework Data Provider for SQL Server 中異步程式設計的詳細資訊,請參閱異步程序設計。
注意
針對伺服器上的長時間執行查詢,請考慮使用 ExecuteReader ,因為透過取消令牌取消查詢的已知問題。 此外,請考慮使用 Cancel 方法來取消執行。
適用於
ExecuteReaderAsync(CommandBehavior)
的異步版本 ExecuteReader(CommandBehavior) ,它會將 傳送 CommandText 至 Connection ,並建置 SqlDataReader 。 例外狀況將經由傳回的 Task 物件回報。
public:
System::Threading::Tasks::Task<Microsoft::Data::SqlClient::SqlDataReader ^> ^ ExecuteReaderAsync(System::Data::CommandBehavior behavior);
public System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader> ExecuteReaderAsync (System.Data.CommandBehavior behavior);
override this.ExecuteReaderAsync : System.Data.CommandBehavior -> System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader>
Public Function ExecuteReaderAsync (behavior As CommandBehavior) As Task(Of SqlDataReader)
參數
- behavior
- CommandBehavior
陳述式執行和資料擷取的選項。 當設定為 時Default
會 ReadAsync(CancellationToken) 先讀取整個數據列,再傳回完整的工作。
傳回
表示非同步作業的工作。
例外狀況
當 SqlDbType 設定為 Stream 時Value,會使用 Binary 或 VarBinary 以外的 。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
-或-
SqlDbType當 設定為 TextReader 時Value,使用 Char、NChar、NVarChar、VarChar 或 Xml 以外的 。
-或-
無效的 CommandBehavior 值。
在工作完成前,對同一個執行個體呼叫 ExecuteReaderAsync(CommandBehavior) 不止一次。
-或- SqlConnection 在串流作業期間關閉或卸除。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
在串流作業期間,或 XmlReaderTextReader 對象中Stream發生錯誤。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
在 Stream 串流作業期間關閉、 XmlReader 或 TextReader 物件。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
備註
如需 .NET Framework Data Provider for SQL Server 中異步程式設計的詳細資訊,請參閱異步程序設計。
適用於
ExecuteReaderAsync(CancellationToken)
的異步版本 ExecuteReader() ,它會將 傳送 CommandText 至 Connection 並建置 SqlDataReader 。
取消語彙基元可用於要求在命令逾時之前捨棄作業。 例外狀況將經由傳回的 Task 物件回報。
public:
System::Threading::Tasks::Task<Microsoft::Data::SqlClient::SqlDataReader ^> ^ ExecuteReaderAsync(System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader> ExecuteReaderAsync (System.Threading.CancellationToken cancellationToken);
override this.ExecuteReaderAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader>
Public Function ExecuteReaderAsync (cancellationToken As CancellationToken) As Task(Of SqlDataReader)
參數
- cancellationToken
- CancellationToken
取消指令。
傳回
表示非同步作業的工作。
例外狀況
當 SqlDbType 設定為 Stream 時Value,會使用 Binary 或 VarBinary 以外的 。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
-或-
SqlDbType當 設定為 TextReader 時Value,使用 Char、NChar、NVarChar、VarChar 或 Xml 以外的 。
-或-
無效的 CommandBehavior 值。
在工作完成前,對同一個執行個體呼叫 ExecuteReaderAsync(CommandBehavior, CancellationToken) 不止一次。
-或-
在串流作業期間已關閉或卸除的 SqlConnection。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
在串流作業期間,或 XmlReaderTextReader 對象中Stream發生錯誤。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
在 Stream 串流作業期間關閉、 XmlReader 或 TextReader 物件。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
備註
如需 .NET Framework Data Provider for SQL Server 中異步程式設計的詳細資訊,請參閱異步程序設計。
適用於
ExecuteReaderAsync(CommandBehavior, CancellationToken)
的 ExecuteReader(CommandBehavior) 異步版本,它會將 傳送 CommandText 至 Connection ,並建 SqlDataReader 置取消令牌,以要求在命令逾時之前放棄作業。 例外狀況將經由傳回的 Task 物件回報。
public:
System::Threading::Tasks::Task<Microsoft::Data::SqlClient::SqlDataReader ^> ^ ExecuteReaderAsync(System::Data::CommandBehavior behavior, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader> ExecuteReaderAsync (System.Data.CommandBehavior behavior, System.Threading.CancellationToken cancellationToken);
override this.ExecuteReaderAsync : System.Data.CommandBehavior * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Data.SqlClient.SqlDataReader>
Public Function ExecuteReaderAsync (behavior As CommandBehavior, cancellationToken As CancellationToken) As Task(Of SqlDataReader)
參數
- behavior
- CommandBehavior
陳述式執行和資料擷取的選項。 當設定為 時Default
, ReadAsync(CancellationToken) 會先讀取整個數據列,再傳回完整的工作。
- cancellationToken
- CancellationToken
取消指令。
傳回
表示非同步作業的工作。
例外狀況
當 SqlDbType 設定為 Stream 時Value,會使用 Binary 或 VarBinary 以外的 。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
-或-
SqlDbType當 設定為 TextReader 時Value,使用 Char、NChar、NVarChar、VarChar 或 Xml 以外的 。
-或-
無效的 CommandBehavior 值。
在工作完成前,對同一個執行個體呼叫 ExecuteReaderAsync(CommandBehavior, CancellationToken) 不止一次。
-或-
在串流作業期間已關閉或卸除的 SqlConnection。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
在串流作業期間,XmlReader或 TextReader 對象中Stream發生錯誤。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
XmlReader在Stream串流作業期間,或 TextReader 物件已關閉。 如需串流的詳細資訊,請參閱 SqlClient 串流支援。
備註
如需 .NET Framework Data Provider for SQL Server 中異步程式設計的詳細資訊,請參閱異步程序設計。