SqlDataReader.GetFieldValueAsync<T>(Int32, CancellationToken) 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. 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
- T
O tipo do valor a ser retornado.
Parâmetros
- i
- Int32
A coluna a ser recuperada.
- cancellationToken
- CancellationToken
A instrução de cancelamento que propaga uma notificação de que as operações devem ser canceladas. Isso não assegura o cancelamento. Uma configuração de CancellationToken.None
torna esse método equivalente a IsDBNull(Int32). A tarefa retornada deve ser marcada como cancelada.
Retornos
O objeto do tipo retornado.
Exceções
A conexão cai ou é fechada durante a recuperação de dados.
O SqlDataReader é fechado durante a recuperação de dados.
Não há dados prontos para serem lidos (por exemplo, o primeiro Read() não foi chamado ou retornou false).
Tentativa de ler uma coluna lida anteriormente no modo sequencial.
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.
Context Connection=true
é especificado na cadeia de conexão.
Tentativa de ler uma coluna não existente.
O valor da coluna era nulo (IsDBNull(Int32) == true
), recuperando um tipo não SQL.
T
não corresponde ao tipo retornado pelo SQL Server ou não pode ser convertido.
O token de cancelamento foi cancelado. Essa exceção é armazenada na tarefa retornada.
Comentários
T
pode ser um dos seguintes tipos:
Booliano | Byte | Char | DateTime |
DateTimeOffset | Decimal | Double | Float |
Guid | Int16 | Int32 | Int64 |
SqlBoolean | SqlByte | Sqldatetime | SqlDecimal |
SqlDouble | SqlGuid | SqlInt16 | SqlInt32 |
SqlInt64 | Sqlmoney | Sqlsingle | SqlString |
String | UDT, que pode ser qualquer tipo CLR marcado com SqlUserDefinedTypeAttribute. |
Para obter mais informações, consulte Suporte de streaming do SqlClient.