SqlDataReader.GetFieldValue<T>(Int32) Metoda

Definice

Synchronně Získá hodnotu zadaného sloupce jako typ.Synchronously gets the value of the specified column as a type. GetFieldValueAsync<T>(Int32, CancellationToken)je asynchronní verze této metody.GetFieldValueAsync<T>(Int32, CancellationToken) is the asynchronous version of this method.

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

Parametry typu

T

Typ hodnoty, která se má vrátit.The type of the value to be returned.

Parametry

i
Int32

Sloupec, který se má načístThe column to be retrieved.

Návraty

T

Vrácený objekt typuThe returned type object.

Výjimky

Během načítání dat je připojení ukončeno nebo Uzavřeno.The connection drops or is closed during the data retrieval.

SqlDataReaderPři načítání dat se zavře.The SqlDataReader is closed during the data retrieval.

Nejsou připravena žádná data ke čtení (například první, Read() nevolalo se nebo vrátilo hodnotu false).There is no data ready to be read (for example, the first Read() hasn't been called, or returned false).

Byl proveden pokus o čtení sloupce předchozího čtení v sekvenčním režimu.Tried to read a previously-read column in sequential mode.

Probíhala asynchronní operace.There was an asynchronous operation in progress. To platí pro všechny metody Get * při spuštění v sekvenčním režimu, jak by bylo možné je volat při čtení datového proudu.This applies to all Get* methods when running in sequential mode, as they could be called while reading a stream.

Probíhá pokus o čtení sloupce, který neexistuje.Trying to read a column that does not exist.

Hodnota sloupce měla hodnotu null ( IsDBNull(Int32) == true ), která načítá typ jiný než SQL.The value of the column was null (IsDBNull(Int32) == true), retrieving a non-SQL type.

Tneodpovídá typu vrácenému funkcí SQL Server nebo nelze přetypovat.T doesn't match the type returned by SQL Server or cannot be cast.

Poznámky

Tmůže to být jeden z následujících typů:T can be one of the following types:

Logická hodnotaBoolean ByteByte CharChar DateTimeDateTime
DateTimeOffsetDateTimeOffset Desetinné čísloDecimal dvojitéDouble FloatFloat
Identifikátor GUIDGuid Int16Int16 Int32Int32 Int64Int64
SqlBooleanSqlBoolean SqlByteSqlByte Hodnota SqlDateTimeSqlDateTime SqlDecimalSqlDecimal
SqlDoubleSqlDouble SqlGuidSqlGuid SqlInt16SqlInt16 SqlInt32SqlInt32
SqlInt64SqlInt64 SqlMoneySqlMoney SqlSingleSqlSingle SqlStringSqlString
ŘetězecString UDT, což může být jakýkoli typ CLR označený pomocí SqlUserDefinedTypeAttribute .UDT, which can be any CLR type marked with SqlUserDefinedTypeAttribute.

Další informace najdete v tématu Podpora pro streamování SqlClient.For more information, see SqlClient Streaming Support.

Platí pro