转换时从DataTable中删除列标题

时间:2016-02-22 10:24:27

标签: c#

在下面的函数中,我尝试获取任何给定datatable的转置。但是如果输入表没有行标题,则会将输入表的第一列添加为输出表的列标题,这是错误的。如何摆脱输出表中的列标题

public DataTable generatetranspose(DataTable inputtable)
{
    DataTable outputtable = new DataTable();

    outputtable.Columns.Add(inputtable.Columns[0].ColumnName.ToString());

    foreach (DataRow inrow in inputtable.Rows)
    {
        string newcol = inrow[0].ToString();
        outputtable.Columns.Add(newcol);
    }

    for(int i = 0 ; i <= inputtable.Columns.Count - 1 ; i++ )
    {
        DataRow newrow = outputtable.NewRow();
        newrow[0] = inputtable.Columns[i].ColumnName.ToString();
        for(int j =0 ; j <= inputtable.Rows.Count - 1 ; j++)
        {
            string colvalue = inputtable.Rows[j][i].ToString();
            newrow[j + 1] = colvalue;
        }
        outputtable.Rows.Add(newrow);
    }

    return outputtable;
}

0 个答案:

没有答案