我试图获取表的列名,但它只返回列名,例如TABLE_SCHEMA
,TABLE_NAME
,TABLE_CATALOG
,TABLE_TYPE
。
这是代码;
DataTable table = con.GetSchema("Tables", new string[] { null, null, "Contact" });
var columnNames = (from DataRow r in table.Rows
from DataColumn c in table.Columns
select c.ColumnName).ToList();
我需要将名字保存在列表中。谢谢。
答案 0 :(得分:0)
试试这个:
DataTable table = con.GetSchema("Columns", new string[] { null, null, "Contact" });
您必须指定Columns而不是Tables作为collectionName ...
您还应该将linq查询更改为以下内容:
var columnNames = (from r in tab.AsEnumerable()
select r.Field<string>("COLUMN_NAME")).ToList();