Share via


SqlDataReader.GetFieldValue<T>(Int32) Método

Definición

Obtiene de forma sincrónica el valor de la columna especificada como un tipo. GetFieldValueAsync<T>(Int32, CancellationToken) es la versión asincrónica de este método.

public:
generic <typename T>
 override T GetFieldValue(int i);
public override T GetFieldValue<T> (int i);
override this.GetFieldValue : int -> 'T
Public Overrides Function GetFieldValue(Of T) (i As Integer) As T

Parámetros de tipo

T

Tipo del valor que se va a devolver.

Parámetros

i
Int32

Columna que va a recuperarse.

Devoluciones

T

Objeto del tipo devuelto.

Excepciones

La conexión se interrumpe o se cierra durante la recuperación de datos.

SqlDataReader se cierra durante la recuperación de datos.

No hay ningún dato listo para leer (por ejemplo, no se ha llamado al primer Read() o ha devuelto false).

Se intentó leer una columna leída previamente en modo secuencial.

Había una operación asincrónica en curso. Esto se aplica a todos los métodos Get* cuando se ejecutan en modo secuencial, ya que se les podía llamar mientras se leía una secuencia.

Se intentó leer una columna que no existe.

El valor de la columna era NULL (IsDBNull(Int32) == true), recuperando un tipo que no es de SQL.

T no coincide con el tipo devuelto por SQL Server o no se puede convertir.

Comentarios

T puede ser uno de los siguientes tipos:

Boolean Byte Char DateOnly (.NET 6 o posterior)
DateTime DateTimeOffset Decimal Double
Float Guid Int16 Int32
Int64 SqlBoolean SqlByte SqlDateTime
SqlDecimal SqlDouble SqlGuid SqlInt16
SqlInt32 SqlInt64 SqlMoney SqlSingle
SqlString STREAM String TextReader
TimeOnly (.NET 6 o posterior) XmlReader UDT, que puede ser cualquier tipo CLR marcado con SqlUserDefinedTypeAttribute.

Para más información, consulte Compatibilidad con streaming de SqlClient.

Se aplica a