SqlConnection.OpenAsync(CancellationToken) Metoda

Definicja

Asynchroniczna wersja Open()programu , która otwiera połączenie bazy danych z ustawieniami właściwości określonymi ConnectionStringprzez element . Token anulowania może służyć do żądania porzucenia operacji 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 uszkodzone z wyjątkiem. 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=true 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 Dostawca danych .NET Framework dla SQL Server, zobacz Asynchronous Programming.

Ta metoda przechowuje w zadaniu zwraca wszystkie wyjątki inne niż użycie, które może zgłosić synchroniczna odpowiednik metody. Jeśli wyjątek jest przechowywany w zwróconym zadaniu, ten wyjątek zostanie zgłoszony, gdy zadanie będzie oczekiwać. Wyjątki użycia, takie jak ArgumentException, są nadal zgłaszane synchronicznie. Aby uzyskać informacje o przechowywanych wyjątkach, zobacz wyjątki zgłaszane przez program Open().

Dotyczy

Zobacz też