DataTableReader.GetOrdinal メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > DataTableReader.GetOrdinal メソッドの意味・解説 

DataTableReader.GetOrdinal メソッド

メモ : このメソッドは、.NET Framework version 2.0 で新しく追加されたものです。

列の名前を指定して、列の序数を取得します。

名前空間: System.Data
アセンブリ: System.Data (system.data.dll 内)
構文構文

Public Overrides Function
 GetOrdinal ( _
    name As String _
) As Integer
Dim instance As DataTableReader
Dim name As String
Dim returnValue As Integer

returnValue = instance.GetOrdinal(name)
public override int GetOrdinal (
    string name
)
public int GetOrdinal (
    String name
)

パラメータ

name

列の名前。

戻り値
列の 0 から始まる序数。

例外例外
例外の種類条件

InvalidOperationException

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

ArgumentException

指定した名前が有効な列名ではありません。

解説解説

DataTableReader クラスで使用できるメソッドのほとんどでは序数の列番号が必要なため、GetOrdinal メソッドを使用して、指定した名前の列の列番号を取得します。

GetOrdinal は、初めに大文字と小文字を区別して検索を実行します。それに失敗した場合は、大文字と小文字を区別せずに、2 回目の検索が実行されます。

GetOrdinal では、かなの全角と半角が区別されません。

序数ベースの検索は名前ベースの検索よりも効率的なため、ループ内で GetOrdinal を呼び出すことは非効率的です。GetOrdinal を 1 回呼び出し、ループ内で使用するために結果を整数の変数に割り当てることによって、時間を節約できます。

使用例使用例

ユーザーが指定している列名のみ判明しているときに、その列の情報を取得する必要がある場合、次のようなプロシージャを使用することで必要な情報を抽出できます。この例では、プロシージャは列名を受け取り、DataTableReader 内でその列の現在の行に格納されているデータを返します。

Private Function GetValueByName( _
   ByVal reader As DataTableReader, _
   ByVal columnName As String)
 As Object

   ' Consider when to use a procedure like this one carefully:
   ' If you're going to retrieve information from a column
   ' in a loop, it would be better to retrieve the column
   ' ordinal once, store the value, and use the methods
   ' of the DataTableReader class directly. 
   Dim columnValue As Object

   Try
      Dim columnOrdinal As Integer
 = reader.GetOrdinal(columnName)
      columnValue = reader.GetValue(columnOrdinal)
   Catch ex As ArgumentException
      ' Throw all other errors back out to the caller.
      columnValue = Nothing
   End Try
   Return columnValue
End Function
private static object GetValueByName(
    DataTableReader reader, string columnName)
{
    // Consider when to use a procedure like this one carefully:
    // if you're going to retrieve information from a column
    // in a loop, it would be better to retrieve the column
    // ordinal once, store the value, and use the methods
    // of the DataTableReader class directly. 
    object columnValue;

    try
    {
        int columnOrdinal = reader.GetOrdinal(columnName);
        columnValue = reader.GetValue(columnOrdinal);
    }
    catch (ArgumentException ex)
    {
        // Throw all other errors back out to the caller.
        columnValue = null;
    }
    return columnValue;
}

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

DataTableReader.GetOrdinal メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



DataTableReader.GetOrdinal メソッドのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS