zoukankan      html  css  js  c++  java
  • 将IList<T>转换成DataTable

    public static DataTable Convert<T>(IList<T> list)
            {
                if (list == null || list.Count <= 0)
                {
                    return null;
                }
                DataTable dt = new DataTable(typeof(T).Name);
                DataColumn dc;
                DataRow dr;

                PropertyInfo[] propertyInfo = typeof(T).GetProperties(BindingFlags.Public | BindingFlags.Instance);

                foreach (T t in list)
                {
                    if (t == null)
                    {
                        continue;
                    }
                    dr = dt.NewRow();
                    for (int i = 0, j = propertyInfo.Length; i < j; i++)
                    {
                        PropertyInfo pi = propertyInfo[i];
                        string name = pi.Name;
                        if (dt.Columns[name] == null)
                        {
                            dc = new DataColumn(name, pi.PropertyType);
                            dt.Columns.Add(dc);
                        }
                        dr[name] = pi.GetValue(t, null);
                    }
                    dt.Rows.Add(dr);
                }
                return dt;
            }

  • 相关阅读:
    Jquery获取元素的位置
    涉及不同实例不同数据库的同一条sql语句
    两种JS事件流
    Dom0级事件和Dom2级事件
    JS中"属性"的用法
    完美解决onchange不能实时的监听
    速读水浒!108将的简介与结局
    运维经理的运维经验总结
    56个美女
    三叠字
  • 原文地址:https://www.cnblogs.com/xiaozhuaweiliang/p/DataTable.html
Copyright © 2011-2022 走看看