我有一个datatable说dt1(它不断改变其内循环)。我有另一个datatable说dt2(最初它为空)。现在我必须在dt2中追加dt1的行。我尝试使用Merge(),但之前的dt2行正在消失。 任何想法如何做到这一点??如何在数据表中添加行?
3
A
回答
1
你正在清理每次循环运行时都会有dt2
表。试试这个:
DataTable dt1 = null; DataTable dt2 = null;
for (int i = 0; i < dt3.Rows.Count; i++)
{
// here "strSQL" is build which changes on the "i" value
dt1 = GetDataTable(strSQL); // this returns a table with single Row
if(dt2 == null)
{
dt2 = dt1.Clone();
}
dt2.Merge(dt1,true);
}
而且,如果应用到主键列基于i
查询的限制,你可以使用
dt2.ImportRow(dt1.Rows[0]);
,而不是
dt2.Merge(dt1,true);
1
0
1
使用ImportRow
方法,像这样:
var table2 = new DataTable();
foreach(DataRow row in table1.Rows)
table2.ImportRow(row);
0
我假设你的表具有相同的结构
foreach (DataRow row in dt1.Rows)
dt2.Rows.Add(row.ItemArray);
1
另一个衍生物若昂·安杰洛的答案将是提前初始化dt2,然后您可以删除空检查
DataTable dt1 = null; DataTable dt2 = new DataTable();
for (int i = 0; i < dt3.Rows.Count; i++)
{
// here "strSQL" is build which changes on the "i" value
dt1 = GetDataTable(strSQL); // this returns a table with single Row
dt2.Merge(dt1,true);
}
相关问题
- 1. 如何在Vaadin表中添加数据
- 2. 如何在每行数据表中添加下拉列表
- 3. 如何将数据行添加到已存在的数据表?
- 4. 如何在数据表中调用ajax后添加数据表
- 5. 如何在laravel数据表中添加行号或序列号
- 6. 如何在angular2数据表中添加行号或序列号
- 7. 如何在数据表中添加多行jquery
- 8. 如何在JSF数据表中添加行详细信息?
- 9. 如何在sqlite上添加NSDictionary表中的行数据库
- 10. 如何在现有数据表中添加一行
- 11. 如何在SQL Server数据表中动态添加行
- 12. 如何在datagrid中添加新行(源数据表)
- 13. 如何提交表格并在数据库中添加一行
- 14. 如何根据列中的值向数据表添加空行
- 15. 如何从数据表中添加多行到水晶报表
- 16. 在数据表中添加html标记添加行
- 17. 如何在executeReader从表中读取行时将行添加到数据表?
- 18. 如何将JavaScript源数据添加(添加)到数据表现有表中
- 19. 如何在jQuery数据表中添加数据
- 20. 如何遍历数据库表以在datagrid中添加数据?
- 21. 如何在数据表中添加数据?
- 22. 如何添加数据库表中不存在的数据?
- 23. 向c#中的数据表添加行
- 24. 添加行中的jQuery数据表
- 25. 如何在数据表中添加行以便从sql表中循环
- 26. ContentTools - 如何在表中添加新行?
- 27. 如何在表中添加一行?
- 28. 如何在表中添加一行?
- 29. 如何在表中动态添加行
- 30. 如何在表中添加多行?
合并工作正常。 – Avi 2009-12-04 04:24:26