怎样将两个DataTable和在一起???
DataTable dtHourNow = MonitoringAllDatasService.GetMonitoringBuildingReportByHourSumDatas(EType, str_rttime, TargetValue, DType);DataTable dtHourOlder = MonitoringAllDatasService.GetMonitoringBuildingReportByHourSumHDatas(EType, DateValue, TargetValue, DType);
//合并结果集
foreach (DataRow dr in dtHourNow.Rows)
{
dtHourOlder.Rows.Add(dr); }
dtHour = dtHourOlder;
问题:
这样循环合并DataTable不行,提示此行已经属于别的表。 应该怎么办???
怎样将两个DataTable( dtHourNow 和dtHourOlder)合在一起???
--------------------编程问答-------------------- 参考:
http://www.cnblogs.com/aflyfly/archive/2009/06/04/1495939.html
http://blog.csdn.net/even0220/article/details/5748710 --------------------编程问答-------------------- dtHourOlder.Rows.Add(dr);
改成
dtHourOlder.Rows.Add(dr.ItemArray); --------------------编程问答-------------------- http://msdn.microsoft.com/zh-cn/library/system.data.datatable.merge(v=vs.110).aspx --------------------编程问答--------------------
DataTable newDataTable = DataTable1.Copy();
foreach (DataRow dr in DataTable2.Rows)
{
newDataTable.ImportRow(dr);
}
--------------------编程问答-------------------- 微软已经写了,不需要再造轮子的
自己google"DataTable.Merge"方法
--------------------编程问答--------------------
昨天看了下就是我上面的官网连接提到的方法 示例中2个datattable的结构是一样的 --------------------编程问答-------------------- 同意! --------------------编程问答-------------------- --------------------编程问答-------------------- 以前做过,貌似要datatable.clone();克隆表结构神马的,有空帮你试试~~~ --------------------编程问答-------------------- 你那样要用ImportRow,而不是Add
其实可以直接用DataTable.Merge方法 --------------------编程问答-------------------- ok 上面的方法非常好 可以结贴了
补充:.NET技术 , ASP.NET