DataTableReader.GetValue(Int32) Метод

Определение

Возвращает значение заданного столбца в его исходном формате.

public:
 override System::Object ^ GetValue(int ordinal);
public override object GetValue (int ordinal);
override this.GetValue : int -> obj
Public Overrides Function GetValue (ordinal As Integer) As Object

Параметры

ordinal
Int32

Порядковый номер столбца (от нуля).

Возвращаемое значение

Значение указанного столбца. Этот метод возвращает значение с типом DBNull для столбцов со значениями null.

Исключения

Переданный индекс находился вне диапазона от 0 до FieldCount - 1.

Предпринята попытка извлечения данных из удаленной строки.

Предпринята попытка чтения столбцов закрытого объекта DataTableReader или получения доступа к ним.

Примеры

В следующем примере выполняется перебирание всех столбцов в текущей строке DataTableReader, отображая содержимое каждого столбца и имя столбца. Как правило, если вы намерены работать со всеми столбцами в строке, полученной DataTableReaderс помощью , рекомендуется использовать GetValues метод , так как он более эффективен.

private static void GetAllValues(DataTableReader reader)
{
    // Given a DataTableReader, retrieve the value of
    // each column, and display the name, value, and type.
    // Make sure you have called reader.Read at least once before
    // calling this procedure.

    // Loop through all the columns.
    object value = null;
    for (int i = 0; i < reader.FieldCount; i++)
    {
        if (reader.IsDBNull(i))
        {
            value = "<NULL>";
        }
        else
        {
            value = reader.GetValue(i);
        }
        Console.WriteLine("{0}: {1} ({2})", reader.GetName(i),
            value, reader.GetFieldType(i).Name);
    }
}
Private Sub GetAllValues(ByVal reader As DataTableReader)

   ' Given a DataTableReader, retrieve the value of 
   ' each column, and display the name, value, and type.
   ' Make sure you've called reader.Read at least once before
   ' calling this procedure.
   ' Loop through all the columns.
   Dim value As Object
   For i As Integer = 0 To reader.FieldCount - 1
      If reader.IsDBNull(i) Then
         value = "<NULL>"
      Else
         value = reader.GetValue(i)
      End If
      Console.WriteLine("{0}: {1} ({2})", reader.GetName(i), _
         value, reader.GetFieldType(i).Name)
   Next
End Sub

Комментарии

Несмотря на то, что перед вызовом этого метода можно вызвать метод IsDBNull , чтобы проверить наличие значений NULL, делать это не нужно.

Применяется к