两个DataTable 比较,并更新其中一个DataTable的值

传入要返回的DataTable,与另一个DataTable比较,只是一个模板 

private DataTable ModifyFiled(DataTable dt, string tname)
        {
            PropertyDAl pty = new PropertyDAl();
            DataTable dtnew = pty.BindOther(tname);
            int count = dt.Rows.Count > dtnew.Rows.Count ? dt.Rows.Count : dtnew.Rows.Count;
            for (int i = 0; i < count; i++)
            {
                //在dt中有,而在dtnew中没有的,就要删除
                if (i < dt.Rows.Count && dtnew.Select(string.Format("name='{0}'", dt.Rows[i]["a_content_code"].ToString())).Length <= 0)
                {
                    dt.Rows.RemoveAt(i);
                }
                ////在dtnew中有,而在dt中没有的,就要删除

                if (i < dtnew.Rows.Count && dt.Select(string.Format("a_content_code='{0}'", dtnew.Rows[i]["name"].ToString())).Length <= 0)
                {
                    dt.Rows.Add(dtnew.Rows[i]["value"].ToString(), dtnew.Rows[i]["name"].ToString(), "0");
                }
            }
            return dt;
        }

posted @ 2013-06-25 15:53  反思  阅读(594)  评论(0编辑  收藏  举报