DataTableReader.GetDouble(Int32) メソッド

定義

列の値を倍精度浮動小数点数値として取得します。

public:
 override double GetDouble(int ordinal);
public override double GetDouble (int ordinal);
override this.GetDouble : int -> double
Public Overrides Function GetDouble (ordinal As Integer) As Double

パラメーター

ordinal
Int32

列の 0 から始まる序数。

戻り値

指定された列の値。

例外

渡されたインデックスが 0 から FieldCount - 1 の範囲にありません。

削除した行からデータを取得しようとしました。

閉じている DataTableReader の列を読み取るかアクセスしようとしました。

指定した列に倍精度浮動小数点数が格納されていません。

次の例では、渡された DataTableReader内の 2 という番号の列の内容を表示します。 特定の行内の列の値が null の場合、コードはテキスト <NULL> を表示します。 列内のデータが正しい型でない場合は、各行のエラー メッセージが表示されます。

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.GetBoolean(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.GetBoolean(2))
         Catch ex As InvalidCastException
            Console.Write("Invalid data type.")
         End Try
      End If
      Console.WriteLine()
   End While
End Sub

注釈

変換は実行されません。したがって、取得されるデータは既に倍精度浮動小数点数であるか、倍精度浮動小数点数に強制的に変換できる必要があります。

を呼び出 IsDBNull して、このメソッドを呼び出す前に null 値があるかどうかを確認します。

適用対象