DataTableReader.IsDBNull(Int32) Method

Definition

Gets a value that indicates whether the column contains non-existent or missing values.

public:
 override bool IsDBNull(int ordinal);
public override bool IsDBNull (int ordinal);
override this.IsDBNull : int -> bool
Public Overrides Function IsDBNull (ordinal As Integer) As Boolean

Parameters

ordinal
Int32

The zero-based column ordinal

Returns

true if the specified column value is equivalent to DBNull; otherwise, false.

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 a column in a closed DataTableReader .

Examples

The following example displays the contents of the column numbered 2 within the passed-in DataTableReader. If the value the column within a particular row is null, the code displays the text <NULL>. If the data within the column of the correct type, the example displays an error message for each row.

private static void PrintColumn(DataTableReader reader)
{
    // Loop through all the rows in the DataTableReader
    while (reader.Read())
    {
        if (reader.IsDBNull(2))
        {
            Console.Write("<NULL>");
        }
        else
        {
            try
            {
                Console.Write(reader.GetString(2));
            }
            catch (InvalidCastException)
            {
                Console.Write("Invalid data type.");
            }
        }
        Console.WriteLine();
    }
}
Private Sub PrintColumn(ByVal reader As DataTableReader)
   ' Loop through all the rows in the DataTableReader
   While reader.Read()
      If reader.IsDBNull(2) Then
         Console.Write("<NULL>")
      Else
         Try
            Console.Write(reader.GetString(2))
         Catch ex As InvalidCastException
            Console.Write("Invalid data type.")
         End Try
      End If
      Console.WriteLine()
   End While
End Sub

Remarks

Call this method to see if there are null column values before calling the typed get methods (for example, GetByte, GetChar, and so on) to avoid raising an error.

Applies to