Obtener el valor del campo en el DataTable al nombre de la columna tiene espacios
-
18-09-2019 - |
Pregunta
He tratado:
ObjDTOleDBNFeIntegra.Rows(I)("[Cnpj Cpf]").ToString() //with brackets
ObjDTOleDBNFeIntegra.Rows(I)("'Cnpj Cpf'").ToString() //with apostrophe
ObjDTOleDBNFeIntegra.Rows(I)("Cnpj Cpf").ToString() //without anything
Estoy usando VB.NET, pero no parecen ser identificado comentarios con apóstrofes en aquí.
Y consigo las excepciones para cada caso:
Columna '[Cnpj Cpf]' no pertenece a la tabla tabla. (fallo)
Columna 'Cnpj Cpf' no pertenece a la tabla tabla. (fallo)
columna '' Cnpj Cpf '' no pertenece a la tabla tabla. (fallo)
¿Qué debo hacer con el fin de ger un valor de un campo en un dataTable cuando el nombre de la columna tiene espacios?
Solución
¿Ha comprobado lo que el columna piensa que se llama? Podría tener guiones, por ejemplo. Lazo sobre las columnas y descubrir (lo siento, ejemplos en C #):
foreach(DataColumn col in table.Columns) {
Debug.WriteLine(col.ColumnName);
}
En realidad, es más rápido usar la columna si usted lo está haciendo en un bucle, por lo que podría utilizar algo como:
DataColumn col = table.Columns["whatever"];
foreach(DataRow row in table.Rows) {
Console.WriteLine(row[col]);
}