zoukankan      html  css  js  c++  java
  • IEnumerable和 IQueryable 转化为DataTable

     

    扩展方法:
    public static DataTable ConvertToDataTable(this IEnumerable enumerable)
    {
        var dataTable = new DataTable();
        foreach (PropertyDescriptor pd in TypeDescriptor.GetProperties(typeof(T))) {
               dataTable.Columns.Add(pd.Name, pd.PropertyType);
        }
        foreach (T item in enumerable) {
               var Row = dataTable.NewRow();
                   
           foreach (PropertyDescriptor dp in TypeDescriptor.GetProperties(typeof(T)))  {
                     Row[pd.Name] = pd.GetValue(item);
           }
        dataTable.Rows.Add(Row);
       }
       return dataTable;

    }

    传统写法:
    DataTable table = new DataTable();
    table.Columns.Add("UserID", typeof (long));
    table.Columns.Add("UserName", typeof (string));

    IEnumerable<T> database = //获取数据源;
        foreach (T info in database) {
            DataRow row = dt.NewRow();
            row["ID"] = database.ID;
            row["Name"] = database.Name;
            table.Rows.Add(row);
         }
    }
    return table;

  • 相关阅读:
    20150826运算符,if语句
    20150825数据类型以及数据转换
    !!!SQL sever 函数表达
    SQL
    !!!遍历数组之多维数组!
    数组应用之————二分法查找
    数组-冒泡排列
    Homework!---判断多久过生日
    C#——语句!
    C#——语言基础 之 运算符!
  • 原文地址:https://www.cnblogs.com/xffy1028/p/2344329.html
Copyright © 2011-2022 走看看