C# 如何从具有未知列的DataTable创建Ilist
我有一个由动态创建的SQL构建的DataTable,所以我不知道DataTable中的列数 如何将此数据表转换为IListC# 如何从具有未知列的DataTable创建Ilist,c#,asp.net,asp.net-mvc-2,C#,Asp.net,Asp.net Mvc 2,我有一个由动态创建的SQL构建的DataTable,所以我不知道DataTable中的列数 如何将此数据表转换为IList 编辑:然后我将使用它发送到页面上的Telerik网格。您可以创建一个IList,如下所示: table.AsEnumerable() .Select(r => table.Columns.ToDictionary(c => c.ColumnName, c => r[c])) .ToList(); var list=newlist();
编辑:然后我将使用它发送到页面上的Telerik网格。您可以创建一个
IList
,如下所示:
table.AsEnumerable()
.Select(r => table.Columns.ToDictionary(c => c.ColumnName, c => r[c]))
.ToList();
var list=newlist();
foreach(表中的变量行。行)
列表。添加(行);
退货清单;
要回答您编辑的问题,只需将网格直接绑定到数据表
。(或其DefaultView
)
你不需要一个单独的
IList
变成IList
什么?因为缺少任何细节,我的一部分真的想发布DataTable.AsEnumerable().ToList()我想把这个列表提供给一个Telerik网格,我想这不是他想要的。但是如果我不知道列名,我如何使用MVC网格显示它?@John:网格应该自动创建列。此外,您还可以通过查看表的Columns
集合中的ColumnName
属性来查找列名。
var list = new List<DataRow>();
foreach (var row in table.Rows)
list.Add(row);
return list;