ADO.NET DataRow - periksa keberadaan kolom

108

Bagaimana cara memeriksa keberadaan kolom di datarow?

Saya sedang membangun dataabel untuk mengatur beberapa data yang telah saya tarik kembali dari database. Bergantung pada jenis data di setiap baris, saya perlu membuat data yang dapat diakses dengan kolom yang berbeda. Kemudian, nanti, saya ingin memeriksa dan melihat apakah datatable yang saya lihat memiliki kolom tertentu.

Saya tahu saya dapat menangkap pengecualian dan menanganinya seperti itu, tetapi saya ingin tahu apakah ada properti atau metode pada objek datarow yang akan melakukan ini untuk saya?

Inilah cara saya melakukannya dengan menangkap pengecualian:

public static String CheckEmptyDataRowItem(DataRow row, String rowName, String nullValue)
{
    try
    {
        return row[rowName].ToString();
    }
    catch (System.ArgumentException)
    {
        return nullValue;
    }
}
Nada
sumber
5
rowName adalah nama yang buruk untuk nama kolom
paparazzo

Jawaban:

212

Anda cukup memeriksanya seperti ini:

return row.Table.Columns.Contains(columnName);
Gaurav
sumber
6

DataTables memiliki info skema itu, jadi periksa apakah koleksi Kolom Tabel Baris berisi bidang.

Wyatt Barnett
sumber