DataTableReader.GetInt16(Int32) メソッド

定義

指定した列の値を 16 ビット符号付き整数として取得します。Gets the value of the specified column as a 16-bit signed integer.

public:
 override short GetInt16(int ordinal);
public override short GetInt16 (int ordinal);
override this.GetInt16 : int -> int16
Public Overrides Function GetInt16 (ordinal As Integer) As Short

パラメーター

ordinal
Int32

列の 0 から始まる序数。The zero-based column ordinal

戻り値

指定された列の値。The value of the specified column.

例外

渡されたインデックスが 0 から FieldCount - 1 の範囲にありません。The index passed was outside the range of 0 to FieldCount - 1.

削除した行からデータを取得しようとしました。An attempt was made to retrieve data from a deleted row.

閉じている DataTableReader の列を読み取るかアクセスしようとしました。An attempt was made to read or access a column in a closed DataTableReader.

指定した列に 16 ビット符号付き整数が格納されていません。The specified column does not contain a 16-bit signed integer.

次の例では、渡さDataTableReaderれた内の列番号2の内容を表示します。The following example displays the contents of the column numbered 2 within the passed-in DataTableReader. 値が特定の行の列が null の場合、コードには null > <というテキストが表示されます。If the value the column within a particular row is null, the code displays the text <NULL>. 列内のデータが正しい型ではない場合、この例では各行のエラーメッセージが表示されます。If the data within the column is not 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.GetInt16(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.GetInt16(2))
         Catch ex As InvalidCastException
            Console.Write("Invalid data type.")
         End Try
      End If
      Console.WriteLine()
   End While
End Sub

注釈

変換は実行されません。したがって、取得されるデータは、 Int16既にであるInt16か、またはに対して強制可能である必要があります。No conversions are performed; therefore, the data retrieved must already be an Int16 or coercible to an Int16.

IsDBNull呼び出して、このメソッドを呼び出す前に null 値があるかどうかを確認します。Call IsDBNull to see if there are null values before calling this method.

適用対象