欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

datatable行转列示例分享

程序员文章站 2024-02-25 09:23:22
复制代码 代码如下: ///   /// datatable行转列  /// &...

复制代码 代码如下:

 /// <summary>
  /// datatable行转列
  /// </summary>
  /// <param name="dtable">需要转换的表</param>
  /// <param name="head">转换表表头对应旧表字段(小写)</param>
  /// <returns></returns>
  public static datatable datatablerowtocon(datatable dtable, string head)
  {
   datatable dt = new datatable();
   dt.columns.add("numberid");
   for (int i = 0; i < dtable.rows.count; i++)
   {//设置表头
    dt.columns.add(dtable.rows[i][head].tostring());
   }
   for (int k = 0; k < dtable.columns.count; k++)
   {
    string temcol = dtable.columns[k].tostring();
    if (dtable.columns[k].tostring().tolower() != head)//过滤掉设置表头的列
    {
     datarow new_dr = dt.newrow();
     new_dr[0] = dtable.columns[k].tostring();
     for (int j = 0; j < dtable.rows.count; j++)
     {
      string temp = dtable.rows[j][k].tostring();
      new_dr[j + 1] = (object)temp;
     }
     dt.rows.add(new_dr);
    }
   }
   return dt;
  }