• DataTable,List去重复记录的方法(转载)


    DataTable,List去重复记录的方法

    思路:将DataTable转成IEnumerable,然后就能调用Distinct方法了

    转载自:菩提树下的杨过 http://yjmyzz.cnblogs.com/
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Data; 
    using System; 

    namespace ConsoleApplication2 

        
    class Program 
        { 
            
    static void Main(string[] args) 
            { 
                DataTable tbl 
    = new DataTable(); 
                tbl.Columns.Add(
    "Id"typeof(System.Int32)); 
                tbl.Columns.Add(
    "City"typeof(System.String)); 
                tbl.Columns.Add(
    "Province"typeof(System.String)); 

                tbl.Rows.Add(
    1"武汉""湖北"); 
                tbl.Rows.Add(
    2"应城""湖北"); 
                tbl.Rows.Add(
    3"武汉""湖北"); 

                IEnumerable 
    <DataRow> r = tbl.AsEnumerable().Distinct(new CityComparer()); 
              
              

                
    //到这一步,r里就是去重复的记录了 

                
    foreach (var item in r) 
                { 
                    Console.WriteLine(item[
    "Id"+ "" + item["City"+ "" + item["Province"]); 
                } 

                Console.ReadLine(); 
            } 


            
        } 

        
    class CityComparer : IEqualityComparer <DataRow> 
        { 
            
    public bool Equals(DataRow r1, DataRow r2) 
            { 
                
    return r1["City"== r2["City"]; 
            } 

            
    public int GetHashCode(DataRow obj) 
            { 
                
    return obj.ToString().GetHashCode(); 
            } 


        } 

  • 相关阅读:
    获取非行间样式
    获取非行间样式
    prompt 方法显示输入对话框
    comfirm 方法显示对话框
    移动端页面常见问题及解决方案
    原生js怎样获取后台端口数据
    canvas描绘渐变的矩形
    cookie 的增加,销毁,读取
    canvas 绘制图形
    数组的排序,去重复
  • 原文地址:https://www.cnblogs.com/atravellers/p/1649884.html
Copyright © 2020-2023  润新知