Получение значения из поля в DataTable, когда имя столбца содержит пробелы

StackOverflow https://stackoverflow.com/questions/2403918

Вопрос

Я пытался:

ObjDTOleDBNFeIntegra.Rows(I)("[Cnpj Cpf]").ToString() //with brackets  
ObjDTOleDBNFeIntegra.Rows(I)("'Cnpj Cpf'").ToString() //with apostrophe  
ObjDTOleDBNFeIntegra.Rows(I)("Cnpj Cpf").ToString() //without anything  

Я использую VB.NET, но комментарии с апострофами здесь не идентифицируются.

И я получаю исключения для каждого случая:
Столбец «[Cnpj Cpf]» не принадлежит таблице Table. (неудача)Столбец «Cnpj Cpf» не принадлежит таблице Table. (неудача)Столбец «Cnpj Cpf» не принадлежит таблице Table. (неудача)

Что мне делать, чтобы получить значение из поля в таблице данных, если имя столбца содержит пробелы?

Это было полезно?

Решение

Вы проверили, что столбец думает, что это называется?Например, это может быть подчеркивание.Прокрутите столбцы и выясните (извините, примеры на C#):

foreach(DataColumn col in table.Columns) {
    Debug.WriteLine(col.ColumnName);
}

На самом деле, быстрее использовать столбец, если вы делаете это в цикле, поэтому я мог бы использовать что-то вроде:

DataColumn col = table.Columns["whatever"];
foreach(DataRow row in table.Rows) {
    Console.WriteLine(row[col]);
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top