SqlConnection.OpenAsync(CancellationToken) Metódus

Definíció

A /> aszinkron verziója, amely adatbázis-kapcsolatot nyit meg a megadott tulajdonságbeállításokkal . A lemondási jogkivonat használatával kérheti a művelet megszakítását a kapcsolat időtúllépése előtt. A kivételek propagálása a visszaadott tevékenységen keresztül megtörténik. Ha a kapcsolat időtúllépési ideje sikeres csatlakozás nélkül telik el, a visszaadott feladat kivételként lesz megjelölve. Az implementáció a készletezett és a nem készletezett kapcsolatok hívási szálának blokkolása nélkül ad vissza egy feladatot.

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

Paraméterek

cancellationToken
CancellationToken

A lemondási utasítás.

Válaszok

Az aszinkron műveletet képviselő feladat.

Kivételek

A feladat befejezése előtt többször hívhat OpenAsync(CancellationToken) meg ugyanarra a példányra.

Context Connection=true a kapcsolati karakterlánc van megadva.

A kapcsolatkészletből a kapcsolati idő eltelte előtt nem volt elérhető kapcsolat.

A kapcsolat megnyitásakor SQL Server által visszaadott hiba.

A lemondási jogkivonat megszakadt. Ezt a kivételt a rendszer a visszaadott tevékenységben tárolja.

Megjegyzések

A hívás OpenAsyncState után vissza kell térnieConnecting, amíg a visszaadott Task érték be nem fejeződik. Ezután, ha a kapcsolat sikeres volt, State vissza kell térnie Open. Ha a kapcsolat meghiúsul, State vissza kell térnie Closed.

A hívás megkísérli Close megszakítani vagy bezárni a megfelelő OpenAsync hívást.

Az aszinkron programozásról a .NET Keretrendszer Data Provider SQL Server című témakörben talál további információt: Aszinkron programozás.

Ez a metódus a feladatban tárolja az összes olyan nem használati kivételt, amelyet a metódus szinkron megfelelője tud dobni. Ha egy kivételt tárol a visszaadott tevékenységben, akkor a rendszer akkor küldi el a kivételt, amikor a feladatra vár. A használati kivételek(például ArgumentException) továbbra is szinkron módon jelennek meg. A tárolt kivételekről lásd a következő által Open()kiadott kivételeket: .

A következőre érvényes:

Lásd még