Condividi tramite


DataTableReader.GetValue(Int32) Metodo

Definizione

Ottiene il valore della colonna specificata nel 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

Parametri

ordinal
Int32

Ordinale di colonna in base zero.

Restituisce

Valore della colonna specificata. Il metodo restituisce DBNull per colonne con valori null.

Eccezioni

L'indice passato non rientrava nell'intervallo compreso tra 0 e FieldCount -1.

Si è tentato di recuperare dati da una riga eliminata.

È stato effettuato un tentativo di lettura o di accesso alle colonne di un oggetto DataTableReader chiuso.

Esempio

L'esempio seguente esegue l'iterazione di tutte le colonne all'interno della riga corrente in un DataTableReaderoggetto , che visualizza il contenuto di ogni colonna e il nome della colonna. In genere, se la finalità consiste nell'usare tutte le colonne all'interno di una riga recuperata da DataTableReader, prendere in considerazione l'uso del GetValues metodo, perché è più efficiente.

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

Commenti

Anche se è possibile chiamare per verificare se sono presenti valori Null prima di chiamare questo metodo, non è necessario eseguire questa operazione IsDBNull .

Si applica a