当前位置: 代码迷 >> ASP.NET >> 如何删除dataset 或datatable中相同的行
  详细解决方案

如何删除dataset 或datatable中相同的行

热度:3452   发布时间:2013-02-25 00:00:00.0
怎么删除dataset 或datatable中相同的行
我用dataset中的Merge合并了两个dataset合并后有许多相同的行
那我怎么删除其中相同的行呢

------解决方案--------------------------------------------------------
C# code
private   bool   ColumnEqual(object   A,object   B)     {     if   (   A   ==   DBNull.Value   &&   B   ==   DBNull.Value   )     return   true;     if   (   A   ==   DBNull.Value   ||   B   ==   DBNull.Value   )     return   true;         return   (   A.Equals(B)   );     }         ///   <summary>     ///   Distinct表字段     ///   </summary>     ///   <param   name="SourceTable">DataTable源</param>     ///   <param   name="FieldName">要Distinct的字段</param>     ///   <returns>返回一个Distinct表,只有一列,就是Distinct列</returns>     public   DataTable   SelectDistinct(DataTable   SourceTable,   string   FieldName)     {     DataTable   dt   =   new   DataTable();     dt.Columns.Add(FieldName,SourceTable.Columns[FieldName].DataType);         object   LastValue   =   null;     foreach(DataRow   dr   in   SourceTable.Select("",FieldName))     {     if   (   LastValue   ==   null   ||   !(ColumnEqual(LastValue,   dr[FieldName]))   )     {     LastValue   =   dr[FieldName];     dt.Rows.Add(new   object[]{LastValue});     }     }         return   dt;     }
  相关解决方案