日期:2014-05-17 浏览次数:20942 次
static void Main(string[] args) { DataTable mytable=new DataTable(); mytable.Columns.Add("str",typeof(string)); mytable.Columns.Add("in",typeof(int)); mytable.Columns.Add("str2",typeof(string)); mytable.Columns.Add("in2",typeof(int)); for(int i=0;i<4;i++) { DataRow myrow=mytable.NewRow(); myrow["str"]="AAAA"; myrow["in"]=10; myrow["str2"]="row"+i.ToString(); myrow["in2"]=i; mytable.Rows.Add(myrow); } DataTable my = fun(mytable); foreach (var a in my.AsEnumerable()) { foreach (var b in a.ItemArray) { Console.Write("{0} ", b.ToString()); } Console.WriteLine(); } } public static DataTable fun(DataTable mytable) { for (int i = 0; i < mytable.Rows.Count; i++) { for (int j = i + 1; j < mytable.Rows.Count; j++) { if (mytable.Rows[i]["str"].ToString() == mytable.Rows[j]["str"].ToString() && mytable.Rows[i]["in"].ToString() == mytable.Rows[j]["in"].ToString()) { mytable.Rows[i]["str2"] = mytable.Rows[i]["str2"].ToString() + mytable.Rows[j]["str2"].ToString(); mytable.Rows[i]["in2"] = Convert.ToInt32(mytable.Rows[i]["in2"]) + Convert.ToInt32(mytable.Rows[j]["in2"]); mytable.Rows[j].Delete(); j--; } } } return mytable; }
------解决方案--------------------