ADO.NET DataRow-列の存在を確認する


108

データ行に列が存在するかどうかを確認するにはどうすればよいですか?

データベースからプルバックしたデータを整理するためにデータテーブルを構築しています。各行のデータのタイプに応じて、異なる列を持つデータテーブルを作成する必要があります。次に、後で、調べているデータテーブルに特定の列があるかどうかを確認します。

例外をキャッチしてそのように処理できることはわかっていますが、datarowオブジェクトにこれを行うプロパティまたはメソッドがあるかどうか知りたいのですが?

例外をキャッチすることでこれを行う方法は次のとおりです。

public static String CheckEmptyDataRowItem(DataRow row, String rowName, String nullValue)
{
    try
    {
        return row[rowName].ToString();
    }
    catch (System.ArgumentException)
    {
        return nullValue;
    }
}

5
rowNameは列名として不適切な名前です
paparazzo

回答:


212

次のように簡単に確認できます。

return row.Table.Columns.Contains(columnName);

6

DataTablesはそのスキーマ情報を持っているので、行のテーブルの列コレクションにフィールドが含まれているかどうかを確認します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.