ADO.NET DataRow - check for column existence

Tone picture Tone · Jun 9, 2009 · Viewed 43.5k times · Source

How do I check for the existence of a column in a datarow?

I'm building datatables to organize some data that I've already pulled back from the database. Depending on the type of data in each row, I need to create a datatable with different columns. Then, later on, I want to check and see if the datatable I am looking at has a certain column.

I know I can catch the exception and handle it that way, but I'm curious if there is a property or method on the datarow object that will do this for me?

Here's how I can do it by catching the exception:

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

Answer

Gaurav  picture Gaurav · Aug 17, 2009

You can simply check like this:

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