DataTableReader.IsDBNull(Int32) Metod

Definition

Hämtar ett värde som anger om kolumnen innehåller icke-existerande eller saknade värden.

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

Parametrar

ordinal
Int32

Den nollbaserade kolumnordningen.

Returer

true om det angivna kolumnvärdet motsvarar DBNull, annars , false.

Undantag

Indexet som skickades låg utanför intervallet 0 till FieldCount - 1.

Ett försök gjordes att hämta data från en borttagen rad.

Ett försök gjordes att läsa eller komma åt en kolumn i en stängd DataTableReader .

Exempel

I följande exempel visas innehållet i kolumnen numrerad 2 i den skickade DataTableReader. Om värdet för kolumnen inom en viss rad är null visas texten NULL> i koden<. Om data i kolumnen av rätt typ visas ett felmeddelande för varje rad i exemplet.

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

Kommentarer

Anropa den här metoden för att se om det finns null-kolumnvärden innan du anropar de inskrivna get-metoderna (till exempel GetByte, GetCharoch så vidare) för att undvika att skapa ett fel.

Gäller för