ADO.NET DataRow: comprobar la existencia de la columna


108

¿Cómo verifico la existencia de una columna en una fila de datos?

Estoy creando tablas de datos para organizar algunos datos que ya he extraído de la base de datos. Dependiendo del tipo de datos en cada fila, necesito crear una tabla de datos con diferentes columnas. Luego, más adelante, quiero verificar y ver si la tabla de datos que estoy viendo tiene una determinada columna.

Sé que puedo detectar la excepción y manejarla de esa manera, pero tengo curiosidad por saber si hay una propiedad o método en el objeto de fila de datos que hará esto por mí.

Así es como puedo hacerlo detectando la excepción:

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

5
rowName es un mal nombre para el nombre de la columna
paparazzo

Respuestas:


212

Simplemente puede verificar así:

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

6

Las tablas de datos tienen esa información de esquema, así que verifique si la colección Columns de la tabla de la fila contiene el campo.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.