SqlConnection.OpenAsync(CancellationToken) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
非同步版本Open()的 ,開啟資料庫連線,並依照 。ConnectionString 取消權杖可用來請求在連線逾時前放棄操作。 例外將透過回傳的任務傳播。 若連線逾時時間過後未成功連接,回傳的任務將被標記為錯誤且有例外。 實作在不阻擋呼叫執行緒的情況下,無論是池中連線還是非池中連線,都能回傳任務。
public:
override System::Threading::Tasks::Task ^ OpenAsync(System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task OpenAsync(System.Threading.CancellationToken cancellationToken);
override this.OpenAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function OpenAsync (cancellationToken As CancellationToken) As Task
參數
- cancellationToken
- CancellationToken
取消指示。
傳回
一個代表非同步操作的任務。
例外狀況
SQL Server 在開啟連線時回傳的任何錯誤。
取消令牌也被取消了。 此例外會儲存在回傳的任務中。
備註
呼叫 OpenAsync後必須 State 返回 Connecting ,直到返回 Task 完成。 若連線成功, State 則必須返回 Open。 若連線失敗,必須 State 返回 Closed。
撥打 to Close 會嘗試取消或關閉對應 OpenAsync 的通話。
欲了解更多關於.NET框架Data Provider for SQL Server 非同步程式設計的資訊,請參見 非同步程式設計。
此方法在任務中儲存所有非使用例外,該方法的同步對應程式可拋出這些例外。 如果回傳的任務中儲存了例外,該例外會在等待任務時拋出。 使用例外錯誤,例如 ArgumentException,仍會同步拋出。 關於儲存的例外,請參見由 Open()拋出的例外。