ibcadmin 发表于 2015-7-21 09:56:07

C#中List转DataTable方法

在C#中使用List转DataTable
/// <summary>
          /// 将集合类转换成DataTable
         /// </summary>
         /// <param name="list">集合</param>
          /// <returns></returns>
          public static DataTable ToDataTable(IList list)
          {
            DataTable result = new DataTable();
            if (list.Count > 0)
            {
               PropertyInfo[] propertys = list.GetType().GetProperties();
                  foreach (PropertyInfo pi in propertys)
                  {
                      result.Columns.Add(pi.Name, pi.PropertyType);
                  }

                  for (int i = 0; i < list.Count; i++)
               {
                      ArrayList tempList = new ArrayList();
                      foreach (PropertyInfo pi in propertys)
                      {
                        object obj = pi.GetValue(list, null);
                        tempList.Add(obj);
                      }
                      object[] array = tempList.ToArray();
                      result.LoadDataRow(array, true);
                  }
            }
            return result;
         }
页: [1]
查看完整版本: C#中List转DataTable方法