SqlDataReader.GetFieldValue<T>(Int32) Metoda

Definicja

Synchronicznie pobiera wartość określonej kolumny jako typ. GetFieldValueAsync<T>(Int32, CancellationToken) to asynchroniczna wersja tej metody.

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 wartości do zwrócenia.

Parametry

i
Int32

Kolumna do pobrania.

Zwraca

T

Zwrócony obiekt typu.

Wyjątki

Połączenie przerywa lub jest zamykane podczas pobierania danych.

Element SqlDataReader jest zamykany podczas pobierania danych.

Nie ma danych gotowych do odczytu (na przykład pierwsza Read() nie została wywołana lub zwrócona wartość false).

Podjęto próbę odczytania wcześniej odczytanej kolumny w trybie sekwencyjnym.

W toku była operacja asynchroniczna. Dotyczy to wszystkich metod Get* podczas uruchamiania w trybie sekwencyjnym, ponieważ można je wywołać podczas odczytywania strumienia.

Próba odczytania kolumny, która nie istnieje.

Wartość kolumny to null (IsDBNull(Int32) == true), pobieranie typu innego niż SQL.

Tnie jest zgodny z typem zwracanym przez SQL Server lub nie można go rzutować.

Uwagi

T może być jednym z następujących typów:

Wartość logiczna Byte Char DateTime
Datetimeoffset Liczba dziesiętna Double Float
Guid (identyfikator GUID) Int16 Int32 Int64
Sqlboolean Sqlbyte Sqldatetime Sqldecimal
Sqldouble Sqlguid SqlInt16 Sqlint32
Sqlint64 Sqlmoney Sqlsingle Sqlstring
Ciąg UDT, który może być dowolnym typem CLR oznaczonym za pomocą SqlUserDefinedTypeAttributepolecenia .

Aby uzyskać więcej informacji, zobacz SqlClient Streaming Support (Obsługa przesyłania strumieniowego sqlclient).

Dotyczy