我有两个 DataTable,其中一个有几行数据,另一个是空的。 我正在对第一个 DataTable 进行循环操作,将其中一些行复制到另一个 DataTable。 但是出现了错误:“该行已经属于另一个表”。
是否有办法逐个复制 DataRow 到另一个 DataTable 呢?
提前感谢。
我有两个 DataTable,其中一个有几行数据,另一个是空的。 我正在对第一个 DataTable 进行循环操作,将其中一些行复制到另一个 DataTable。 但是出现了错误:“该行已经属于另一个表”。
是否有办法逐个复制 DataRow 到另一个 DataTable 呢?
提前感谢。
newtable.ImportRow(oldtable.Rows[i])
其中i
是所需的行编号。
正如在http://support.microsoft.com/kb/308909/en-us中所解释的那样。
复制ItemArray,当且仅当列相同时才有效。
var dtCopyTo = new DataTable();
foreach(var rowCopyFrom in dtCopyFrom.Rows)
{
var updatedDataRow = dtCopyTo.NewRow();
updatedDataRow.ItemArray = rowCopyFrom.ItemArray;
dtCopyTo.AddRow(updatedDataRow);
}
注:代码是在没有集成开发环境的情况下编写的,请检查语法正确性。