C# 如何以与datatable定义的顺序不同的顺序检索datacolumns?

C# 如何以与datatable定义的顺序不同的顺序检索datacolumns?,c#,C#,我有一个5行的datatable,希望将数据读入网格视图。此时,in一次读取一列信息 但我想按这个顺序阅读信息 col1 | col2 | col4 | col5 | col3 | col6 | | | | | | | 数据位于datatable而不是sql表上 在从数据库中进行选择时,不要使用*。而是按所需顺序显式列出所有列名: SELECT col1,col2,col4,col5,ol3,col6 FROM dbo.TableNa

我有一个5行的datatable,希望将数据读入网格视图。此时,in一次读取一列信息

但我想按这个顺序阅读信息

col1 | col2 | col4 | col5 | col3 | col6 |
     |      |      |      |      |      |
数据位于datatable而不是sql表上


在从数据库中进行选择时,不要使用
*
。而是按所需顺序显式列出所有列名:

SELECT col1,col2,col4,col5,ol3,col6
FROM dbo.TableName
ORDER BY desired_column
您还可以在
GridView
本身中轻松修改顺序。只要改变它的顺序


如果我理解正确,您可以设置列的序号

dataTable.Columns[1].SetOrdinal(0);

定义另一个名为“Order”的隐藏列,它是一个整数类型,并使用它按集合排序。从何处读取数据?@TarangPatel:A
DataTable
通常由数据库中的
DataAdapter
填充。你还没有提到它是如何填充的。但是,我还演示了如何在
网格视图中显示所需的顺序。是的,但数据不是excelsql@TarangPatel:如果这与您的问题有关,请编辑它并将此信息添加到其中。但这又有什么关系呢?我以为您只是想知道如何控制
GridView
中列的顺序。您想对列进行排序(如问题中所述)还是对行进行排序?
dataTable.Columns[1].SetOrdinal(0);