我想從數據表中刪除不需要的列,並安排在預先定義的順序數據表刪除列和重新排序
例如,我的表列像下面的列的順序列,
Col2|Col1|Col3|Test|Test1|Col5|Col4|Some col name|Col6
我想刪除測試,測試1和一些山坳名稱和數據表重新安排到下面的格式
Col1|Col2|Col3|Col4|Col5|Col6
// I need the below columns
List<string> tableColumns = new List<string>();
tableColumns.Add("Col1");
tableColumns.Add("Col2");
tableColumns.Add("Col3");
tableColumns.Add("Col4");
tableColumns.Add("Col5");
tableColumns.Add("Col6");
List<DataColumn> tblColumns = MyDataTable.Columns.Cast<DataColumn>().ToList();
//Remove unwanted columns
foreach (DataColumn col in tblColumns)
{
if (!tableColumns.Contains(col.ColumnName.Trim()))
{
MyDataTable.Columns.Remove(col);
}
}
現在我該如何重新排序的列在下面的順序?
Col1|Col2|Col3|Col4|Col5|Col6
我試圖像下面的代碼,但如果在數據表中不存在TableColumn來的所有項目失敗。 還有些時間的數據表的列名有一些空的空間(如「Col1中」)
foreach (var col in tableColumns)
{
MyDataTable.Columns[col].SetOrdinal(tableColumns.IndexOf(col));
}
這是去除不需要的列和重新安排列的最佳方式?
它適合我,非常感謝! – blue
不客氣 –