Compartir a través de


SqlConnection.OpenAsync(CancellationToken) Método

Definición

Una versión asincrónica de Open(), que abre una conexión a bases de datos con los valores de propiedad especificados por ConnectionString. Token de cancelación que se puede usar para solicitar que se abandone la operación antes de que transcurra el tiempo de espera de la conexión. Las excepciones se propagarán mediante la tarea devuelta. Si el tiempo de espera de conexión transcurre sin conectar correctamente, la tarea devuelta se marcará como error con una excepción. La implementación devuelve una tarea sin bloquear el subproceso de llamada para las conexiones agrupadas y no agrupadas.

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

Parámetros

cancellationToken
CancellationToken

Instrucción de cancelación.

Devoluciones

Tarea que representa la operación asincrónica.

Excepciones

Llamar a OpenAsync(CancellationToken) más de una vez para la misma instancia antes de la finalización de la tarea.

Context Connection=true se especifica en la cadena de conexión.

Una conexión del grupo de conexiones no estaba disponible antes de transcurrir el tiempo de espera de conexión.

Cualquier error devuelto por SQL Server que se produjo al abrir la conexión.

Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.

Comentarios

Después de llamar a OpenAsync, debe devolver Connecting hasta que se complete el devuelto TaskState. Después, si la conexión se realizó correctamente, State debe devolver Open. Si se produce un error en la conexión, State debe devolver Closed.

Una llamada a Close intentará cancelar o cerrar la llamada correspondiente OpenAsync .

Para obtener más información sobre la programación asincrónica en el proveedor de datos de .NET Framework para SQL Server, vea Programación asincrónica.

Este método almacena en la tarea que devuelve todas las excepciones que no son de uso que puede producir el homólogo sincrónico del método. Si se almacena una excepción en la tarea devuelta, se producirá esa excepción cuando se espere la tarea. Las excepciones de uso, como ArgumentException, se siguen iniciando de forma sincrónica. Para ver las excepciones almacenadas, consulte las excepciones producidas por Open().

Se aplica a

Consulte también