zoukankan      html  css  js  c++  java
  • list转table

    代码

            public static DataTable ListToDataTable<T>(List<T> list)
            {
                Type tp = typeof(T);
                PropertyInfo[] proInfos = tp.GetProperties();
                DataTable dt = new DataTable();
                foreach (var item in proInfos)
                {
                    //解决DataSet不支持System.Nullable<>问题
                    Type colType = item.PropertyType;
                    if ((colType.IsGenericType) && (colType.GetGenericTypeDefinition() == typeof(Nullable<>)))
                    {
                        colType = colType.GetGenericArguments()[0];
                    }
                    //添加列明及对应类型 
                 
                    {
                        dt.Columns.Add(item.Name, colType);
                    }
                    
                }
                foreach (var item in list)
                {
                    DataRow dr = dt.NewRow();
                    foreach (var proInfo in proInfos)
                    {
                        object obj = proInfo.GetValue(item);
                        if (obj == null)
                        {
                            continue;
                        }
                        if (proInfo.PropertyType == typeof(DateTime) && Convert.ToDateTime(obj) < Convert.ToDateTime("1753-01-01"))
                        {
                            continue;
                        }
                        dr[proInfo.Name] = obj;
                    }
                    dt.Rows.Add(dr);
                }
                return dt;
            }
  • 相关阅读:
    多线程02
    多线程01
    CSS
    Mybatis CRUD中万能Map的用法及优势
    Tomcat配置
    Node.js+Vue+Webpack
    Java的几种常见排序算法
    maven插件 mybatis逆向工程
    ssm依赖
    mybatis spring整合依赖配置
  • 原文地址:https://www.cnblogs.com/wangyinlon/p/13224931.html
Copyright © 2011-2022 走看看