DataTableReader.GetValue(Int32) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
Ordinal de columna de base cero.
Devoluciones
Valor de la columna especificada. Este método devuelve DBNull para las columnas null.
Excepciones
El índice pasado estaba fuera del intervalo de 0 a FieldCount - 1.
Se intentó recuperar datos de una fila eliminada.
Se intentó leer o acceder a las columnas de un objeto cerrado DataTableReader .
Ejemplos
En el ejemplo siguiente se recorre en iteración todas las columnas de la fila actual de , DataTableReaderque muestra el contenido de cada columna y el nombre de columna. Por lo general, si la intención es trabajar con todas las columnas de una fila recuperada por , DataTableReaderconsidere 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.