我有一个简单的例程,它使用SELECT
语句并使用DataTable
。
我使用相同的SELECT
语句并将其传递给例程以生成列名和数据类型的数组。
只要SELECT
语句很简单
例如SELECT Firstname,Secondname...
等......
...我的例程可以将列信息添加到我的数组
但是,如果SELECT
语句稍微复杂一些
e.g。 SELECT Firstname,Secondname AS Surname...
等......
...我的例程会因为Surname
不是列名而失败。
当您考虑子查询和聚合列时,可能会出现更多复杂性。
如果有人从SELECT
声明中获取任何基本列名称,我正在寻找更优雅的方法吗?
答案 0 :(得分:2)
您有一个DataTable.Columns属性,每个对象都是DataColumn,根据您所做的查询填充该对象。
因此,如果您在as
语法中使用了SQL
,那么您应该在该集合中找到相同的名称。
答案 1 :(得分:0)
您可以使用ExecuteReader执行查询。然后,您可以使用GetName()获取每个字段的名称。