LINQ IEnumerable DataRow选择

时间:2016-07-07 16:27:38

标签: linq ienumerable datarow

我一直在使用LINQ来查询来自IEnumerable(DataRow)的记录。我不想在Linq中硬编码字段名,而是想传递string []作为输入参数,并且需要从string []中检索字段名称。请帮助我。

List<string[]> IDcolls = drResults.Select(q => new[] 
                                { 
                                     q["empid"].ToString(),  
                                     q["empname"].ToString() 
                                })
                                .Skip(mBatch * batchSize)
                                .Take(batchSize)
                                .ToList();
string[] IDs = (from q in drResults
                select q["empid"].ToString())
                .Skip(i * batchSize)
                .Take(batchSize)
                .ToArray();

1 个答案:

答案 0 :(得分:2)

这样的事情应该可以胜任:

string[] columns = ...;

var result = drResults
    .Skip(i * batchSize)
    .Take(batchSize)
    .Select(dr => columns.Select(c => dr[c].ToString()).ToArray())
    .ToList();