2013-12-06 3 views
1

Я использую функцию CopyDataTable() и возвращает этот результат в другую таблицу. CopyDatatable дает мне правильный результат, но не несет имя таблицы. Почему? Ниже приведены примерыФункция CopyDatatable() не принимает имя таблицы

Datatable dtTable = Datatable.Select("Select Statament").CopyToDataTable();

и

Datatable dt = (from r in Datatable.AsEnumerable() 
       where Convert.ToString(r[ColumnName]) == "20" 
       select r).CopyToDataTable(); 
+0

, что это не очень серьезная проблема, на самом деле это должно быть сделано таким образом, мы всегда можем дать скопированный DataTable любое имя, которое мы хотим, но скопировать имя может вызвать некоторые скрытые проблемы, если вы добавите как оригинал и скопированы в один и тот же набор данных. –

ответ

0

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

dt.TableName = YourOriginalDataTable.TableName; 
+0

Функция копирования дает мне данные и имя таблицы, но Copydatatable возвращает только данные из таблицы, а не имя. В Linq нет расширения метода Copy(), но есть CopyDataTable(). И даже после CopyDatatable(). Copy() не указывает имя таблицы. – Jankya

Смежные вопросы