Compartilhar via


SqlConnection.OpenAsync(CancellationToken) Método

Definição

Uma versão assíncrona de Open(), que abre uma conexão de banco de dados com as configurações de propriedade especificadas pelo ConnectionString. O token de cancelamento pode ser usado para solicitar que a operação seja abandonada antes de expirar o tempo limite da conexão. Exceções serão propagadas por meio da tarefa retornada. Se o tempo limite de conexão sem se conectar com êxito, a tarefa retornada será marcada como com falha com uma exceção. A implementação retorna uma tarefa sem bloquear o thread de chamada para conexões em grupo e não agrupada.

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

A instrução de cancelamento.

Retornos

Uma tarefa que representa a operação assíncrona.

Exceções

Chamando OpenAsync(CancellationToken) mais de uma vez para a mesma instância antes da conclusão da tarefa.

Context Connection=true é especificado na cadeia de conexão.

Uma conexão não estava disponível do pool de conexão antes do tempo limite da conexão.

Qualquer erro retornado pelo SQL Server, que ocorreu ao abrir a conexão.

O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.

Comentários

Depois de chamar OpenAsync, deve retornar Connecting até que o retornado Task seja State concluído. Em seguida, se a conexão tiver sido bem-sucedida, State deverá retornar Open. Se a conexão falhar, State deverá retornar Closed.

Uma chamada para Close tentará cancelar ou fechar a chamada correspondente OpenAsync .

Para obter mais informações sobre programação assíncrona no provedor de dados .NET Framework para SQL Server, consulte Programação assíncrona.

Esse método armazena na tarefa que retorna todas as exceções de não uso que o equivalente síncrono do método pode gerar. Se uma exceção for armazenada na tarefa retornada, essa exceção será gerada quando a tarefa for aguardada. Exceções de uso, como ArgumentException, ainda são geradas de forma síncrona. Para as exceções armazenadas, consulte as exceções geradas por Open().

Aplica-se a

Confira também