我试图通过使用Linq的Column索引找到数据表的Column名称之一。 示例:
int colindex = 2;
Datatable: PersonInfo
ID Name Address City State Country Zip
1 xx 11-23 LA CA USA 9123
PersonInfo.AsEnumerable().Select(x => x.field<int>(Colindex).ColumnName);
returns Address
答案 0 :(得分:7)
为什么要尝试使用LINQ来做到这一点?这很简单:
var columnName = PersonInfo.Columns[colindex].ColumnName;
您的代码不起作用,因为Field<T>
扩展方法会返回T
,因此Field<int>
会返回int
,并且无法从{{1}获取列名价值。
如果你真的必须使用LINQ,你应该查询int
属性,而不是行:
DataTable.Columns