SqlCommand.ExecuteScalarAsync(CancellationToken) 方法

定義

非同步版本 ExecuteScalar()的 ,會非同步執行查詢,並回傳查詢回傳結果集第一列的第一欄。 額外的欄位或列則被忽略。

取消標記可用來請求在指令逾時前放棄操作。 例外將透過回傳的任務物件回報。

public:
 override System::Threading::Tasks::Task<System::Object ^> ^ ExecuteScalarAsync(System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<object> ExecuteScalarAsync(System.Threading.CancellationToken cancellationToken);
override this.ExecuteScalarAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<obj>
Public Overrides Function ExecuteScalarAsync (cancellationToken As CancellationToken) As Task(Of Object)

參數

cancellationToken
CancellationToken

取消指示。

傳回

一個代表非同步操作的任務。

例外狀況

當 設定為 SqlDbType時,會使用除 BinaryVarBinary 以外的 。ValueStream 欲了解更多串流資訊,請參閱 SqlClient 串流支援

-或-

SqlDbType除了 Char、NChar、NVarChar、VarCharXml,當 設定為 時,會使用其他 CharValue、NVarChar、TextReader 或 Xml。

-或-

當 設定為 SqlDbType時,會使用 Xml 以外的 。ValueXmlReader

在同一 ExecuteScalarAsync(CancellationToken) 個實例呼叫超過一次,任務才完成。

-或-

SqlConnection 串流操作中關閉或掉落。 欲了解更多串流資訊,請參閱 SqlClient 串流支援

-或-

Context Connection=true 在連接字串中指定。

SQL Server 執行命令文字時回傳錯誤。

-或-

串流操作中發生了一次超時。 欲了解更多串流資訊,請參閱 SqlClient 串流支援

在串流操作中,物件或 發生StreamXmlReaderTextReader錯誤。 欲了解更多串流資訊,請參閱 SqlClient 串流支援

Stream該 , XmlReaderTextReader物件在串流操作中被關閉。 欲了解更多串流資訊,請參閱 SqlClient 串流支援

取消令牌也被取消了。 此例外會儲存在回傳的任務中。

備註

欲了解更多關於.NET框架Data Provider for SQL Server 非同步程式設計的資訊,請參見 非同步程式設計

此方法在任務中儲存所有非使用例外,該方法的同步對應程式可拋出這些例外。 如果回傳的任務中儲存了例外,該例外會在等待任務時拋出。 使用例外錯誤,例如 ArgumentException,仍會同步拋出。 關於儲存的例外,請參見由 ExecuteScalar()拋出的例外。

適用於

另請參閱