DataTable比较当前行和下行是否一致 DataTable复制结构和复制数据
DataView dvNeed = dtView.DefaultView;dvNeed.Sort = "EMPLOYEEID"; //排序用于下面当前行和下行比较 一般用来添加一行汇总行DataTable dtNeed = dvNeed.ToTable(); //排序后的DataTableDataTable dtFinally = dtNeed.Clone(); //复制dtNeed的结构 不复制数据 ,全复制用Copy()for (int n = 0; n < dtNeed.Rows.Count; n++){string EMPLOYEEID = dtNeed.Rows[n]["EMPLOYEEID"].ToString();string COVERID = dtNeed.Rows[n]["COVERID"].ToString();//判断是否最末一行string CompareEMPLOYEEID = (n == dtNeed.Rows.Count - 1) ? "000000" : dtNeed.Rows[n + 1]["EMPLOYEEID"].ToString();if (CompareEMPLOYEEID != EMPLOYEEID) //比较当前行与下行ID 不同ID 则添加汇总行{#region DataRow drCount = dtFinally.NewRow();//可以做相关统计信息dtFinally.Rows.Add(drCount);#endregion}}//添加dtNeed中的数据到dtFinallyforeach (DataRow row in dtNeed.Rows){dtFinally.Rows.Add(row.ItemArray);}