教程集 www.jiaochengji.com
教程集 >  脚本编程  >  Asp.net  >  正文 asp.net中dataset删除重复数据的方法

asp.net中dataset删除重复数据的方法

发布时间:2018-09-18   编辑:jiaochengji.com
教程集为您提供asp.net中dataset删除重复数据的方法 等资源,欢迎您收藏本站,我们将为您提供最新的asp.net中dataset删除重复数据的方法 资源

DataTable 中的数据如下:

id key value
1 a aa
1 a aa
2 b bb
2 b bb
3 c cc
3 c cc

现在想要让DataTable变成这个样子的

id key value
1 a aa
2 b bb
3 c cc


代码

<blockquote>

void DeleteSameRow(DataSet ds)
  {
  ArrayList indexList = new ArrayList();
  // 找出待删除的行索引
  for (int i = 0; i < ds.Tables[0].Rows.Count-1; i )
  {
  if (!IsContain(indexList, i))
  {
  for (int j = i 1; j < ds.Tables[0].Rows.Count; j )
  {
  if (ds.Tables[0].Rows[i][AccountInfo.Columns.AUName].ToString() == ds.Tables[0].Rows[j][AccountInfo.Columns.AUName].ToString())
  {
  indexList.Add(j);
  }
  }
  }
  }
  // 根据待删除索引列表删除行
  for (int i = indexList.Count - 1; i >= 0; i--)
  {
  int index = Convert.ToInt32(indexList[i]);
  ds.Tables[0].Rows.RemoveAt(index);
  }
  }
  bool IsContain(ArrayList indexList, int index)
  {
  for (int i = 0; i < indexList.Count; i )
  {
  int tempIndex = Convert.ToInt32(indexList[i]);
  if (tempIndex == index)
  {
  return true;
  }
  }
  return false;
  }

</blockquote>

再看一个实例

<blockquote>

/// <summary> 
        /// 获取对固定列不重复的新DataTable 
        /// </summary> 
        /// <param name="dt">含有重复数据的DataTable</param> 
        /// <param name="colName">需要验证重复的列名</param> 
        /// <returns>新的DataTable,colName列不重复,表格式保持不变</returns> 
        private DataTable GetDistinctTable(DataTable dt,string colName) 
        { 
            DataView dv = dt.DefaultView; 
            DataTable dtCardNo = dv.ToTable(true, colName); 
            DataTable Pointdt = new DataTable(); 
            Pointdt = dv.ToTable(); 
            Pointdt.Clear(); 
            for (int i = 0; i < dtCardNo.Rows.Count; i  ) 
            { 
                DataRow dr = dt.Select(colName   "='"   dtCardNo.Rows[i][0].ToString()   "'")[0]; 
                Pointdt.Rows.Add(dr.ItemArray); 
            } 
            return Pointdt; 
        }

</blockquote>

您可能感兴趣的文章:
学习ADO.NET的DataAdapter对象
亲密接触ASP.Net(10)
asp.net中datareader 和 dataset 的区别详解
.net中DataTable DataSet DataView使用方法
ASP.NET缓存 Cache之数据缓存
亲密接触ASP.Net(8)
C#操作数据库总结(vs2005+sql2005)
asp.net(C#)解析Json类代码
asp.net中dataset删除重复数据的方法
DataSet DataTable DataReader DataAdapter详解

[关闭]
~ ~