SqlDataReader.GetFieldValueAsync<T>(Int32, CancellationToken) Método

Definição

Assíncronamente obtém o valor da coluna especificada como um tipo. GetFieldValue<T>(Int32) é a versão síncrona deste método.

public:
generic <typename T>
 override System::Threading::Tasks::Task<T> ^ GetFieldValueAsync(int i, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<T> GetFieldValueAsync<T>(int i, System.Threading.CancellationToken cancellationToken);
override this.GetFieldValueAsync : int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'T>
Public Overrides Function GetFieldValueAsync(Of T) (i As Integer, cancellationToken As CancellationToken) As Task(Of T)

Parâmetros de Tipo Genérico

T

O tipo do valor a devolver.

Parâmetros

i
Int32

A coluna a recuperar.

cancellationToken
CancellationToken

A instrução de cancelamento, que propaga uma notificação de que as operações devem ser canceladas. Isto não garante o cancelamento. Um ajuste de CancellationToken.None torna este método equivalente a IsDBNull(Int32). A tarefa devolvida deve ser marcada como cancelada.

Devoluções

Task<T>

O objeto de tipo devolvido.

Exceções

A ligação cai ou é encerrada durante a recuperação dos dados.

O SqlDataReader é fechado durante a recuperação dos dados.

Não há dados prontos para serem lidos (por exemplo, o primeiro Read() não foi chamado ou devolveu falso).

Tentei ler uma coluna já lida em modo sequencial.

Estava em curso uma operação assíncrona. Isto aplica-se a todos os métodos Get* quando executados em modo sequencial, pois podem ser chamados ao ler um fluxo.

Context Connection=true está especificado no cadeia de ligação.

Tentar ler uma coluna que não existe.

O valor da coluna era nulo (IsDBNull(Int32) == true), recuperando um tipo não SQL.

T não corresponde ao tipo devolvido por SQL Server ou não pode ser lançado.

O token de cancelamento foi cancelado. Esta exceção é armazenada na tarefa devolvida.

Observações

T pode ser um dos seguintes tipos:

Boolean, Byte, Char, DateTime, DateTimeOffset, Decimal, Double, Float, Guid, Int16, Int32, Int64, SqlBoolean, SqlByte, SqlDateTime, SqlDecimal, SqlDouble, SqlGuid, SqlInt16, SqlInt32, SqlInt64, SqlMoney, SqlSingle, SqlString, String ou UDT (qualquer tipo de CLR marcado com SqlUserDefinedTypeAttribute).

Para mais informações, consulte Suporte de Transmissão SQLClient.

Aplica-se a