DataTableReader.GetValue(Int32) Método

Definición

Obtiene el valor de la columna especificada en su formato nativo.

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

Parámetros

ordinal
Int32

Índice de la columna de base cero.

Devoluciones

El valor de la columna especificada. Este método devuelve DBNull para las columnas null.

Excepciones

El índice que se ha pasado se encontraba fuera del intervalo entre 0 y FieldCount - 1.

Se ha intentado recuperar los datos de una fila eliminada.

Se ha intentado la lectura o el acceso a columnas en un elemento DataTableReader cerrado.

Ejemplos

En el ejemplo siguiente se recorren en iteración todas las columnas de la fila actual de , DataTableReaderque muestra el contenido de cada columna y el nombre de la columna. Por lo general, si la intención es trabajar con todas las columnas de una fila recuperada por DataTableReader, considere la posibilidad de usar el GetValues método en su lugar, ya que es más eficaz.

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

Comentarios

Aunque puede llamar IsDBNull a para ver si hay valores NULL antes de llamar a este método, no tiene que hacerlo.

Se aplica a