Создание первой строки в DataTable имени столбцов - PullRequest
5 голосов
/ 03 января 2012

Я пытаюсь установить в первой строке DataTable имена столбцов. Я использую библиотеку GenericParsing из Code Project. Проблема в том, что парсер устанавливает имя столбца по умолчанию.

Спасибо.

Ответы [ 3 ]

11 голосов
/ 03 января 2012

Я думаю, вам нужно следующее:

foreach (DataColumn column in table.Columns)
{
    string cName = table.Rows[0][column.ColumnName].ToString();
    if (!table.Columns.Contains(cName) && cName != "")
    {
         column.ColumnName = cName;
    }

}

table.Rows[0].Delete(); //If you don't need that row any more
8 голосов
/ 03 января 2012

Это должно делать то, что вы хотите:

DataRow firstRow = table.NewRow();
List<string> names = new List<string>();
foreach (DataColumn column in table.Columns)
{
    names.Add(column.ColumnName);
}
firstRow.ItemArray = names.ToArray();
table.Rows.InsertAt(firstRow, 0);

Если первая строка уже существует и вы хотите «перезаписать», измените первую строку на:

DataRow firstRow = table.Rows[0];

И удалить последнюю строку.

0 голосов
/ 09 сентября 2015

Привет, надеюсь, это поможет тебе. Это сделает всю строку заголовком столбца

foreach (DataRow inRow in inputTable.Rows)
     {
         string newColName = inRow[0].ToString();
         outputTable.Columns.Add(newColName);
     }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...