DataRow[] into new DataTable,

AlexFFP
Дата: 21.01.2010 11:49:21
Блиц

Помогите пожалуйста:

DataRow[] drs = olddatatable.select(exp);

Как эти drs всунуть в новую DataTable.
virus_system
Дата: 21.01.2010 11:53:17
for (int i = 0; i < drs.count; i++)
table.ImportRow(drs[i])
AlexFFP
Дата: 29.01.2010 10:57:53
ОК, делаю:

DataRow[] drs = olddatatable.select(); // Убрал совсем условия отбора т.е.
// drs.length == newdatatable.Rows.Count, true

newdatatable.ImportRow(drs[0]);

MessageBox.Show(newdatatable.Rows[0][0].ToString());

ERROR: Невозможно найти столбец 0.

Хотя конечно следующие записи работают:

MessageBox.Show(olddatatable.Rows[0][0].ToString());

Или

MessageBox.Show(drs[0][0].ToString());

В чём загвоздка?
AlexFFP
Дата: 29.01.2010 11:00:02
Точнее: // drs.length == olddatatable.Rows.Count, true
AlexFFP
Дата: 29.01.2010 12:29:04
Снимаю вопрос.

После создания новой таблицы нужно было её привести к старой:

DataTable newdatatable = new DataTable();

newdatatable = olddatatable.Clone();

Вот так... Всех благодарю за внимание!
beowulf-da
Дата: 29.01.2010 13:32:30
AlexFFP
Снимаю вопрос.

После создания новой таблицы нужно было её привести к старой:
DataTable newdatatable = new DataTable();

newdatatable = olddatatable.Clone();

Вот так... Всех благодарю за внимание!
Clone вроде как сам создаёт новую DataTable.
"Дешевле" писать:
DataTable newdatatable = olddatatable.Clone();
А если ещё и сами данные нужны, то
DataTable newdatatable = olddatatable.Copy();