在vb.net中向数据表添加行时,rows.add和importRow之间有什么区别?
Dim dt As DataTable
Dim dr As DataRow
'Add row this way...
dt.rows.add(dr)
'or this way.
dt.importRow(dr)
答案 0 :(得分:11)
两者都将相同的功能添加到数据表中,但主要区别在于
DataTable dt1=new DataTable();
DataRow dr1=dt1.NewRow();
DataTable dt2=new DataTable();
dt2.Rows.Add(dr1); // will give you error already dr1 belongs to another datatable in that //case you can do like this
dt2.ImportRow(dr1); // safe
dt1.Rows.Add(dr1); // safe as dr1 Row belongs to DataTable1 so no exception raise
希望能给你一个想法..
答案 1 :(得分:2)
建议的答案不正确。下面的MSDN文章显示dt2.ImportRow(dr1)不会导入dr1。这是因为它处于分离状态。 dt2也没有架构。
http://msdn.microsoft.com/en-us/library/system.data.datatable.importrow.aspx