verificar valor validar una tabla saber registro pertenece obtener net existe datos columna campo c# datatable argumentexception

c# - valor - validar si un registro existe en la base de datos



cómo verificar si una columna existe en una tabla de datos (4)

Tengo un datable generado con el contenido de un archivo csv. Uso otra información para mapear alguna columna del csv (ahora en la tabla de datos) a la información que el usuario debe completar.

En el mejor mundo, el mapeo sería siempre posible. Pero esto no es realidad ... Entonces, antes de intentar mapear el valor de la columna datatable, necesitaría verificar si esa columna existe. Si no hago este control, tengo una ArgumentException.

Por supuesto que puedo verificar esto con un código como este:

try { //try to map here. } catch (ArgumentException) { }

pero por ahora tengo 3 columnas para mapear y algunas o todas podrían estar existentes / faltantes

¿Hay una buena manera de verificar si existe una columna en una tabla de datos?


En el caso de columnas múltiples, puede usar un código similar al que figura a continuación. Estaba repasando esto y encontré la respuesta para verificar varias columnas en Datatable.

private bool IsAllColumnExist(DataTable tableNameToCheck, List<string> columnsNames) { bool iscolumnExist = true; try { if (null != tableNameToCheck && tableNameToCheck.Columns != null) { foreach (string columnName in columnsNames) { if (!tableNameToCheck.Columns.Contains(columnName)) { iscolumnExist = false; break; } } } else { iscolumnExist = false; } } catch (Exception ex) { } return iscolumnExist; }


Puede usar operator Contains ,

private void ContainColumn(string columnName, DataTable table) { DataColumnCollection columns = table.Columns; if (columns.Contains(columnName)) { .... } }

MSDN - DataColumnCollection.Contains ()



myDataTable.Columns.Contains("col_name")