62,046
社区成员
发帖
与我相关
我的任务
分享
public class Utils
{
public static DataTable Merge(DataTable table1, DataTable table2)
{
DataTable table3 = new DataTable();
foreach (DataColumn c in table1.Columns)
{
table3.Columns.Add(c.ColumnName, c.DataType);
}
foreach (DataColumn c in table2.Columns)
{
table3.Columns.Add(c.ColumnName, c.DataType);
}
for (int i = 0; i < table1.Rows.Count || i < table2.Rows.Count; i++)
{
object[] o = table1.Rows.Count > i + 1 ? table1.Rows[i].ItemArray : new object[table1.Columns.Count];
object[] o2 = table2.Rows.Count > i + 1 ? table2.Rows[i].ItemArray : new object[table2.Columns.Count];
object[] o3 = new object[o.Length + o2.Length];
o.CopyTo(o3, 0);
o2.CopyTo(o3, o.Length);
table3.Rows.Add(o3);
}
return table3;
}
}
DataColumn[] columns = new DataColumn[table1.Columns.Count + table2.Columns.Count];
table1.Columns.CopyTo(columns,0);
table2.Columns.CopyTo(columns, table1.Columns.Count);