Udostępnij za pośrednictwem


SqlConnection.OpenAsync(CancellationToken) Metoda

Definicja

Wersja asynchroniczna programu Open(), która otwiera połączenie bazy danych z ustawieniami właściwości określonymi przez element ConnectionString. Token anulowania może służyć do żądania, aby operacja została porzucona przed upływem limitu czasu połączenia. Wyjątki będą propagowane za pośrednictwem zwróconego zadania. Jeśli limit czasu połączenia upłynie bez pomyślnego nawiązania połączenia, zwrócone zadanie zostanie oznaczone jako błędne z powodu wyjątku. Implementacja zwraca zadanie bez blokowania wątku wywołującego dla połączeń w puli i bez puli.

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

Parametry

cancellationToken
CancellationToken

Instrukcja anulowania.

Zwraca

Zadanie reprezentujące operację asynchroniczną.

Wyjątki

Wywołanie OpenAsync(CancellationToken) więcej niż raz dla tego samego wystąpienia przed ukończeniem zadania.

Context Connection=trueparametr jest określony w parametry połączenia.

Połączenie nie było dostępne z puli połączeń przed upływem limitu czasu połączenia.

Wszelkie błędy zwrócone przez SQL Server, które wystąpiły podczas otwierania połączenia.

Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwracanym zadaniu.

Uwagi

Po wywołaniu metody OpenAsyncState należy powrócić Connecting do momentu ukończenia zwróconej Task wartości. Następnie, jeśli połączenie zakończyło się pomyślnie, State musi zwrócić wartość Open. Jeśli połączenie nie powiedzie się, State należy zwrócić wartość Closed.

Wywołanie metody , aby Close podjąć próbę anulowania lub zamknięcia odpowiedniego OpenAsync wywołania.

Aby uzyskać więcej informacji na temat programowania asynchronicznego w programie .NET Framework Data Provider for SQL Server, zobacz Asynchronous Programming (Programowanie asynchroniczne).

Ta metoda jest przechowywana w zadaniu, które zwraca wszystkie wyjątki nieużytowe, które może zgłosić synchroniczna odpowiednik metody. Jeśli wyjątek jest przechowywany w zwracanym zadaniu, ten wyjątek zostanie zgłoszony podczas oczekiwania zadania. Wyjątki użycia, takie jak ArgumentException, są nadal zgłaszane synchronicznie. W przypadku przechowywanych wyjątków zobacz wyjątki zgłoszone przez Open()usługę .

Dotyczy

Zobacz też