Вопрос по ado.net – Почему имя столбца из файла CSV отличается от его DataTable?

1

Я использую OleDbConnection, OleDbCommand и OleDbDataReader для чтения файла CSV в DataTable.

CSV-файл использует первую строку в качестве строки заголовка.

Некоторые имена в заголовке имеют не буквенно-цифровые символы, такие как (_. /).

Когда система создает имена столбцов, которые она транспонирует. (точка) в знак # (знак фунта).

Почему меняется этот символ и есть ли способ остановить изменение, сделав. (точка) оставаться в названии столбца?

Спасибо
Кит

Ваш Ответ

1   ответ
2

потому что они являются метасимволами в SQL для определения иерархий. Я не верю, что вообще желательно пытаться сохранить период.

Так что, вы бы посоветовали sourceColumnName.Replace (".", "#"); вместо того, чтобы пытаться сохранить период? Keith Sirmons
Мне непонятно, зачем ты это делаешь; OLE уже не делает это для вас? chaos
Вот пример: object data = datatable.Rows [rowIndex] [sourceColumnName.Replace (".", "#")]; Keith Sirmons

Похожие вопросы