如何转换列表<;列表<;字符串>>;到DataTable
本文关键字:lt gt 列表 何转换 DataTable 字符串 转换 | 更新日期: 2023-09-27 17:59:02
如何将List<List<string>>
转换为DataTable
?我正在尝试将网格视图的DataSource
设置为List<List<string>>
变量。
这可以使用扩展方法轻松完成。
将此类添加到您的解决方案
static class ListExtensions
{
public static DataTable ToDataTable(this List<List<string>> list)
{
DataTable tmp = new DataTable();
foreach (List<string> row in list)
{
tmp.Rows.Add(row.ToArray());
}
return tmp;
}
}
然后使用这样的扩展方法:
List<List<string>> myList = new List<List<string>>();
// Fill with values...
DataTable table = myList.ToDataTable();
我宁愿将网格的DataSource设置为BindableList,这可能会更容易创建,而不是双重嵌套的List,而是行列表(其中行是表示的业务实体,例如Customer)。
public static DataTable ToDataTable(this List<List<string>> list)
{
DataTable dt = new DataTable();
list.First().ForEach(colname => dt.Columns.Add(colname));
foreach (List<string> row in list.Skip(1))
dt.Rows.Add(row.ToArray());
return dt;
}