C#

C#,多表DataRow增加时’该行已经属于另一个表’,的解决方法

C#,多表DataRow增加时’该行已经属于另一个表’,的解决方法

将tableA表内的一行数据复制到tableB中,最开始大家想到的方法是
DataTable dtA = obj.QueryA();
DataTable dtB = dtA.Clone();  //—克隆表A的结构

foreach(DataRow item in dtA.Rows)
{
DataRow Nitem = item;
dtB.Rows.Add(Nitem);
}

报错:该行已经属于另一个表
怎么办呢?以下提供一个笨的方法和一个简单的方法

笨方法:

foreach(DataRow item in dtA.Rows)
{
DataRow Nitem = dtA.NewRow();
for (int k = 0; k < item.Table.Columns.Count;k++ )
{
Nitem[k] = item[k];
}
dtB.Rows.Add(Nitem);
}

简单方法:

foreach(DataRow item in dtA.Rows)
{
dtB.ImportRow(item);
}

Pls call me CPP.
Posts created 150

发表评论

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top