我想知道是否存在效率的方式来覆盖column
的{{1}}标头的第一个datatable
为了说明我的观点,假设有人将row
作为示例
datatable
Column 0 Column 1 Column 2
--------------------------
事实上,可以使用
x1 x2 x3
;
dataTable.Columns["Column 0"].ColumnName = "x1"
;等
dataTable.Columns["Column 1"].ColumnName = "x2"
;
但是,如果有人处理dataTable.AcceptChanges()
或50
100
,则此手动更新的效率无疑会低下。
谢谢。
答案 0 :(得分:0)
您可以使用以下代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using System.Data;
namespace Rextester
{
public class Program
{
public static void Main(string[] args)
{
//Your code goes here
Console.WriteLine("Hello, world!");
DataTable table = new DataTable();
table.Columns.Add("Dosage", typeof(int));
table.Columns.Add("Drug", typeof(string));
table.Columns.Add("Patient", typeof(string));
//table.Columns.Add("Date", typeof(DateTime));
// Here we add five DataRows.
table.Rows.Add(25, "Indocin", "David");
table.Rows.Add(50, "Enebrel", "Sam");
table.Rows.Add(10, "Hydralazine", "Christoff");
table.Rows.Add(21, "Combivent", "Janet");
table.Rows.Add(100, "Dilantin", "Melanie");
if(table.Rows.Count > 0)
{
for(int i = 0; i < table.Columns.Count; i++){
string columnName = Convert.ToString(table.Columns[i]);
table.Columns[columnName].ColumnName = Convert.ToString(table.Rows[0][i]);
}
}
for(int i = 0; i < table.Columns.Count; i++){
Console.WriteLine(table.Columns[i]);
}
}
}
}