C#DataTable:ImportRow(DataRow)与Rows.Add(DataRow.ItemArray)的比较
我有两个具有相同模式的C#DataTable:ImportRow(DataRow)与Rows.Add(DataRow.ItemArray)的比较,c#,asp.net,datatable,datarow,C#,Asp.net,Datatable,Datarow,我有两个具有相同模式的DataTable: DataTable t1 = new DataTable(); DataTable t2 = t1.Clone(); 如果我想向t1添加新的DataRow: DataRow row=t1.NewRow(); t1.Rows.Add(t1); 我不能使用t1.ImportRow(行)由于创建后,行处于分离状态,因此它将被ImportRow方法忽略(请参阅) 现在我想将行复制到t2:我知道数据行对象只能包含在一个数据表中,因此需要创建一个副本,要做到这
DataTable
:
DataTable t1 = new DataTable();
DataTable t2 = t1.Clone();
如果我想向t1
添加新的DataRow
:
DataRow row=t1.NewRow();
t1.Rows.Add(t1);
我不能使用t1.ImportRow(行)代码>由于创建后,行
处于分离状态,因此它将被ImportRow
方法忽略(请参阅)
现在我想将行
复制到t2
:我知道数据行
对象只能包含在一个数据表
中,因此需要创建一个副本,要做到这一点,可以使用两种方法:
t1.Rows.Add(row.ItemArray);
或
我的问题是:aret1.Rows.Add(row.ItemArray)代码>和t1.ImportRow(行)代码>等效?我所有的假设都正确吗?
我已经研究了代码,它看起来像是t1.Rows.Add(row.ItemArray)代码>
就不会那么复杂了。无论如何,这些方法在技术上并不等同。你说的“技术上不等同”是什么意思?它们有不同的副作用或结果吗?@WoDoSc它们实际上有不同的代码,导入方法进行额外的检查等。
t1.ImportRow(row);