Почему возвращаемый DataTable имеет столбцы только для чтения в FileHelpers - PullRequest
6 голосов
/ 10 февраля 2012

Мне интересно, почему filehelpers возвращают столбцы только для чтения.

У меня была огромная проблема с ими , не обновляющими значения, и я не мог понять, почему.Теперь мне нужен еще один цикл, чтобы пройти через все столбцы и изменить их, чтобы они не были доступны только для чтения.

Есть ли способ, с помощью которого я могу сказать Filehelpers не делать этого?Так что мне не нужно тратить время на все это снова?

1 Ответ

11 голосов
/ 12 февраля 2012

За это отвечает метод FileHelpers class RecordOperations.CreateEmptyDataTable(), который не является виртуальным.

Я думаю, причина может заключаться в том, что это похоже на использование обычного DataReader через DataTable.Load(IReader), который также создает строки только для чтения.

Однако это легко исправить, пройдястолбцы вместо строк:

foreach (DataColumn col in dt.Columns) 
    col.ReadOnly = false;
...