SqlConnection.OpenAsync(CancellationToken) Metodo

Definizione

Versione asincrona di Open(), che apre una connessione di database con le impostazioni di proprietà specificate dalla proprietà ConnectionString. Il token di annullamento può essere usato per richiedere che l'operazione venga abbandonata prima che trascorra l'intervallo di timeout. Le eccezioni verranno propagate tramite l'attività restituita. Se l'intervallo di tempo di connessione trascorre senza ottenere la connessione, l'attività restituita viene contrassegnata come attività che presenta errori con un'eccezione. L'implementazione restituisce un'attività senza bloccare il thread chiamante per le connessioni raccolte e non raccolte.

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

Parametri

cancellationToken
CancellationToken

L'istruzione di annullamento.

Restituisce

Attività che rappresenta l'operazione asincrona.

Eccezioni

OpenAsync(CancellationToken) viene chiamato più volte per la stessa istanza prima del completamento dell'attività.

Context Connection=true è specificato nella stringa di connessione.

Non era disponibile una connessione dal pool di connessioni prima del timeout.

Qualsiasi errore restituito da SQL Server che si è verificato durante l'apertura della connessione.

Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.

Commenti

Dopo aver chiamato OpenAsync, deve restituire Connecting fino al completamento dell'oggetto restituito TaskState. Quindi, se la connessione ha avuto esito positivo, State deve restituire Open. Se la connessione non riesce, State deve restituire Closed.

Una chiamata a Close tenterà di annullare o chiudere la chiamata corrispondente OpenAsync .

Per altre informazioni sulla programmazione asincrona nel provider di dati .NET Framework per SQL Server, vedere Programmazione asincrona.

Questo metodo archivia nell'attività restituisce tutte le eccezioni non di utilizzo che la controparte sincrona del metodo può generare. Se un'eccezione viene archiviata nell'attività restituita, tale eccezione verrà generata quando l'attività è attesa. Le eccezioni di utilizzo, ad esempio ArgumentException, vengono comunque generate in modo sincrono. Per le eccezioni archiviate, vedere le eccezioni generate da Open().

Si applica a

Vedi anche