C# 把List 集合转换成DataTable

  /// <summary>
        /// 将List集合 转换成 DataTable
        /// </summary>
        /// <param name="entitys">sellerSearchDealList是我自己定义的一个类</param>
        public static DataTable ListToTable(List<object> entitys)
        {
            DataTable dtresult = new DataTable();
            if (entitys == null || entitys.Count < 1)
            {
                throw new Exception("");
            }
            else
            {
                PropertyInfo[] propertys = entitys[0].GetType().GetProperties();
                foreach (PropertyInfo pi in propertys)
                {
                    dtresult.Columns.Add(pi.Name, pi.PropertyType);
                }

                for (int i = 0; i < entitys.Count; i++)
                {
                    ArrayList tenpList = new ArrayList();
                    foreach (PropertyInfo pi in propertys)
                    {
                        object obj = pi.GetValue(entitys[i], null);
                        tenpList.Add(obj);
                    }
                    object[] array = tenpList.ToArray();
                    dtresult.LoadDataRow(array, true);
                }
            }
            return dtresult;
        }

 

posted @ 2014-02-12 17:27  JasonGu0  阅读(642)  评论(0编辑  收藏  举报