ibcadmin 发表于 2015-4-9 09:32:08

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