Freigeben über


SqlConnection.OpenAsync(CancellationToken) Methode

Definition

Eine asynchrone Version von Open(), die eine Datenbankverbindung mit den Eigenschaftseinstellungen öffnet, die durch ConnectionString angegeben sind. Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout der Verbindung abläuft. Ausnahmen werden über die zurückgegebene Aufgabe weitergegeben. Wenn die Timeout-Zeit für die Verbindung abläuft, ohne die Verbindung erfolgreich herzustellen, wird die zurückgegebene Aufgabe als fehlgeschlagen mit einer Ausnahme markiert. Die Implementierung gibt eine Aufgabe zurück, ohne den aufrufenden Verbindungs-Thread zu blockieren (gilt auch für Pool-Verbindungen).

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

Parameter

cancellationToken
CancellationToken

Die Abbruchanweisung.

Gibt zurück

Eine Aufgabe, die den asynchronen Vorgang darstellt.

Ausnahmen

OpenAsync(CancellationToken) wird vor dem Abschluss der Aufgabe mehrmals für dieselbe Instanz aufgerufen.

Context Connection=true ist in der Verbindungszeichenfolge angegeben.

Es war keine Verbindung aus dem Verbindungspool verfügbar, bevor ein Timeout für die Verbindung aufgetreten ist.

Jeder von SQL Server zurückgegebene Fehler, der beim Öffnen der Verbindung aufgetreten ist.

Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.

Hinweise

Nach dem Aufruf StateOpenAsyncmuss zurückgegeben werden, Connecting bis die zurückgegebene Task abgeschlossen ist. Wenn die Verbindung erfolgreich war, State muss zurückgegeben Openwerden. Wenn die Verbindung fehlschlägt, State muss zurückgegeben werden Closed.

Ein Aufruf von Close versucht, den entsprechenden OpenAsync Anruf abzubrechen oder zu schließen.

Weitere Informationen zur asynchronen Programmierung im .NET Framework-Datenanbieter für SQL Server finden Sie unter Asynchrone Programmierung.

Diese Methode speichert in der Aufgabe, die alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Verwendungsausnahmen wie ArgumentExceptionwerden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter ausnahmen, die von ausgelöst werden Open().

Gilt für:

Weitere Informationen