将数据表转换为私有的List<List<string>>?

3

有什么快速的方法可以将 DataTable 转换为 List<List<string>> 呢?

目前我正在使用以下方法:

for (int rowIndex = 1; rowIndex <= stats.EndRowIndex; rowIndex++)
{
    List<string> lstOneRowElements = new List<string>();
    for (int colIndex = 1; colIndex <= stats.EndColumnIndex; colIndex++)
    {                                
        lstOneRowElements.Add(excelDoc.GetCellValueAsString(rowIndex, colIndex).Trim());
    }

    lstAllData.Add(lstOneRowElements);
}

在哪里

private List<List<string>> lstAllData { get; set; }

有更快的方法吗?

@Soner 感谢您的编辑。 - Rahul Chowdhury
格式化是你的好朋友 ;) - Soner Gönül
2
stats是什么类型?可能不是.NET DataTable,因为我在该类型上看不到EndRowIndex属性。它来自http://help.syncfusion.com/cr/cref_files/silverlight/pdf/html/9d7ce914-d164-cd37-d41a-10ddcc6584ea.htm吗? - Gaute Løken
1个回答

4
如果您有一个数据表(见评论Mithon),那么您可以尝试这个方法。
var q = from row in dt.AsEnumerable()
        select row.ItemArray.Select(x => x.ToString()).ToList<string>();

var y = q.ToList();

感谢您的简化...你太棒了 :) - Rahul Chowdhury
为什么要加上 var y = q.ToList(); 这一行?你可以在第一行中添加 .ToList() !! - Ramesh Rajendran

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接