2008-09-15 3 views
5

Каков самый быстрый способ передачи нескольких тысяч строк данных из одного DataTable в другой? Было бы замечательно увидеть некоторые примеры фрагментов кода.Копирование данных из одного DataTable в другой

Редактировать: Мне нужно объяснить немного больше. Существует условие фильтрации для копирования строк. Таким образом, простая копия() не будет работать.

+0

Вам нужно скопировать только определенные строки или весь DataTable? – 2008-09-15 23:36:56

+0

Только определенные строки. Обновлено сообщение тоже. – Alex 2008-09-15 23:37:58

+0

Можете ли вы фильтровать с помощью DataView.Filter, а затем DataTable.Copy? – GEOCHET 2008-09-15 23:40:45

ответ

7

Вы не можете скопировать всю таблицу, вам нужно скопировать одну строку. Из http://support.microsoft.com/kb/308909 (образец кода, если вы по ссылке)

«Как скопировать DataRows Между DataTables Перед тем, как использовать метод ImportRow, вы должны убедиться, что целевая таблица имеет идентичную структуру, как и в исходной таблице. Этот пример использует Клонировать метод класса DataTable для копирования структуры DataTable, включая все схемы DataTable, отношения и ограничения.

В этом примере используется таблица Products, которая входит в базу данных Microsoft SQL Server Northwind. Первые пять строк копируются из таблицы Products в другую таблицу, созданную в памяти ".

2

Копирование строк на стол бросает мне несколько флагов. Я видел, как люди пытались это сделать раньше, и в каждом отдельном случае то, что они действительно хотели, было System.Data.DataView. Вы действительно должны проверить, будет ли свойство RowFilter делать то, что вам нужно.

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