首页 新闻 会员 周边

c# 对dataset里面的datatable相同BILL_NO的行 进行合并

0
悬赏园豆:20 [已解决问题] 解决于 2017-02-28 10:41

dataset 里面的datatable

private DataTable GetList(DataTable DataSourceBody)

       {

           DataTable dt = DataSourceBody;

           DataTable dtCopy = dt.Copy();

           DataView dv = dt.DefaultView;

           dv.Sort = "BILL_NO";

           dtCopy = dv.ToTable();

 

           DataTable dt2 = DataSourceBody.Clone();

 

           string common_BILL_NO = "";

           for (int i = 0; i < dtCopy.Rows.Count; i++)

           {

 

               string new_BILL_NO = dtCopy.Rows[i]["BILL_NO"].ToString();

 

               if (!common_BILL_NO.Equals(new_BILL_NO))

               {

                   //dt2.Rows.Add(dtCopy.Rows[i]);

                   dt2.Rows.Add(dt.Rows[i].ItemArray);//

                   common_BILL_NO = new_BILL_NO;

               }

               else

               {

                   dt2.Rows[dt2.Rows.Count - 1]["G_NAME"] = dt2.Rows[dt2.Rows.Count - 1]["G_NAME"] + ";" + dtCopy.Rows[i]["G_NAME"];//合并运单号相同的行,把 G_NAME字段拼解,用分号隔开

 

               }

           }

           return dt2;

       }

如上是dataset表,代码是对 bill_no 列进行比对,然后合并相同的字段 G_NAME;其中,这个表解析出来有46行,有相同的和不相同的(bill_no字段)

问题:

为什么这个放发不能对这个表对  bill_no 列进行比对后,合并不了字段 G_NAME 啊!!!  求大神、、、、、、、、、、、我是用vs2010开发的

C#
差不哆丨好先生的主页 差不哆丨好先生 | 初学一级 | 园豆:0
提问于:2017-01-04 23:06
< >
分享
最佳答案
0

第一、现在都2017年了,你还在用vs2010是什么鬼?

第二、现在都是用Model了,你还在用DataSet和DataTable是什么鬼?

第三、解决上面第二个问题,你就不存在你的这个问题了。

第四、数据源绑定可以直接绑定集合类型的,集合类型在绑定的情景下可以完全代替DataTable。

收获园豆:20
ensleep | 小虾三级 |园豆:1682 | 2017-01-06 09:53
其他回答(1)
0

谢谢 ,自己解决了

差不哆丨好先生 | 园豆:0 (初学一级) | 2017-02-28 10:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册