DbDataReader.GetFieldValueAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém de forma assíncrona o valor da coluna especificada como um tipo solicitado.
Sobrecargas
GetFieldValueAsync<T>(Int32) |
Obtém de forma assíncrona o valor da coluna especificada como um tipo solicitado. |
GetFieldValueAsync<T>(Int32, CancellationToken) |
Obtém de forma assíncrona o valor da coluna especificada como um tipo solicitado. |
GetFieldValueAsync<T>(Int32)
- Origem:
- DbDataReader.cs
- Origem:
- DbDataReader.cs
- Origem:
- DbDataReader.cs
Obtém de forma assíncrona o valor da coluna especificada como um tipo solicitado.
public:
generic <typename T>
System::Threading::Tasks::Task<T> ^ GetFieldValueAsync(int ordinal);
public System.Threading.Tasks.Task<T> GetFieldValueAsync<T> (int ordinal);
member this.GetFieldValueAsync : int -> System.Threading.Tasks.Task<'T>
Public Function GetFieldValueAsync(Of T) (ordinal As Integer) As Task(Of T)
Parâmetros de tipo
- T
O tipo do valor a ser retornado.
Parâmetros
- ordinal
- Int32
O ordinal da coluna baseado em zero.
Retornos
Uma tarefa cujo Result contém o valor da coluna especificada.
Exceções
A conexão caiu ou foi fechada durante a recuperação de dados.
- ou -
O leitor de dados foi fechado durante a recuperação de dados.
- ou -
Não há dados prontos para serem lidos (por exemplo, o primeiro Read() não foi chamado ou retornou false
).
- ou -
Tentativa de ler uma coluna lida anteriormente no modo sequencial.
- ou -
Havia uma operação assíncrona em andamento. Isso se aplica a todos os métodos Get_*_ executados no modo sequencial, pois eles podem ser chamados durante a leitura de um fluxo.
O índice da coluna está fora do intervalo.
O valor retornado pelo banco de dados não corresponde ou não pode ser convertido em T
.
Comentários
Esse método assíncrono só é necessário para evitar bloquear o thread de chamada quando o leitor é criado no modo sequencial.
Se o modo sequencial não for especificado, todos os valores de coluna deverão ficar disponíveis na memória sempre que ReadAsync for concluído e chamar a versão síncrona do método não deve bloquear o thread de chamada.
A implementação padrão desse método assíncrono invoca seu equivalente síncrono e retorna uma Tarefa concluída, potencialmente bloqueando o thread de chamada.
Os provedores de dados que dão suporte à programação assíncrona devem substituir a implementação padrão usando operações de E/S assíncronas.
Outros métodos e propriedades do objeto DbDataReader não devem ser chamados enquanto a Tarefa retornada ainda não tiver sido concluída.
Aplica-se a
GetFieldValueAsync<T>(Int32, CancellationToken)
- Origem:
- DbDataReader.cs
- Origem:
- DbDataReader.cs
- Origem:
- DbDataReader.cs
Obtém de forma assíncrona o valor da coluna especificada como um tipo solicitado.
public:
generic <typename T>
virtual System::Threading::Tasks::Task<T> ^ GetFieldValueAsync(int ordinal, System::Threading::CancellationToken cancellationToken);
public virtual System.Threading.Tasks.Task<T> GetFieldValueAsync<T> (int ordinal, System.Threading.CancellationToken cancellationToken);
abstract member GetFieldValueAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'T>
override this.GetFieldValueAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'T>
Public Overridable Function GetFieldValueAsync(Of T) (ordinal As Integer, cancellationToken As CancellationToken) As Task(Of T)
Parâmetros de tipo
- T
O tipo do valor a ser retornado.
Parâmetros
- ordinal
- Int32
O ordinal da coluna baseado em zero.
- cancellationToken
- CancellationToken
Um token para cancelar a operação assíncrona.
Retornos
Uma tarefa cujo Result contém o valor da coluna especificada.
Exceções
A conexão caiu ou foi fechada durante a recuperação de dados.
- ou -
O leitor de dados foi fechado durante a recuperação de dados.
- ou -
Não há dados prontos para serem lidos (por exemplo, o primeiro Read() não foi chamado ou retornou false
).
- ou -
Tentativa de ler uma coluna lida anteriormente no modo sequencial.
- ou -
Havia uma operação assíncrona em andamento. Isso se aplica a todos os métodos Get_*_ executados no modo sequencial, pois eles podem ser chamados durante a leitura de um fluxo.
O índice da coluna está fora do intervalo.
O valor retornado pelo banco de dados não corresponde ou não pode ser convertido em T
.
O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.
Comentários
Esse método assíncrono só é necessário para evitar bloquear o thread de chamada quando o leitor é criado no modo sequencial.
Se o modo sequencial não for especificado, todos os valores de coluna deverão ficar disponíveis na memória sempre que ReadAsync for concluído e chamar a versão síncrona do método não deve bloquear o thread de chamada.
A implementação padrão desse método assíncrono invoca seu equivalente síncrono e retorna uma Tarefa concluída, potencialmente bloqueando o thread de chamada. A implementação padrão também retorna uma tarefa cancelada se passar um token de cancelamento já cancelado.
Os provedores de dados que dão suporte à programação assíncrona devem substituir a implementação padrão usando operações de E/S assíncronas.
Esse método aceita um token de cancelamento que pode ser usado para solicitar a operação a ser cancelada no início. As implementações podem ignorar essa solicitação.
Outros métodos e propriedades do objeto DbDataReader não devem ser chamados enquanto a Tarefa retornada ainda não tiver sido concluída.