DataTableReader.GetValue(Int32) Method

Definition

Gets the value of the specified column in its native format.

C#
public override object GetValue(int ordinal);

Parameters

ordinal
Int32

The zero-based column ordinal.

Returns

The value of the specified column. This method returns DBNull for null columns.

Exceptions

The index passed was outside the range of 0 to FieldCount - 1.

An attempt was made to retrieve data from a deleted row.

An attempt was made to read or access columns in a closed DataTableReader .

Examples

The following example iterates through all the columns within the current row in a DataTableReader, displaying the contents of each column and the column name. Generally, if your intent is to work with all the columns within a row retrieved by a DataTableReader, consider using the GetValues method instead, because it is more efficient.

C#
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);
    }
}

Remarks

Although you can call IsDBNull to see if there are null values before calling this method, you do not have to do this.

Applies to

Product Versions
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1