[英]LINQ selecting all item array elements
奇怪的问题,基本上我正在创建一个 DataTable,使用 AsEnumerable() 方法,然后使用 LINQ 查询。
但是,我不知道这个 DataTable 有多少行或列,我需要选择所有的项目数组元素,有没有办法从 ItemArray[0] 循环到 ItemArray[ItemArray.lenth-1] LINQ 查询? 这是我发现可以绑定到 MVC 网格的唯一方法,所以如果有更好的方法,我很想知道!
下面是我想做的一种伪代码。 任何帮助都会很棒!
var model = from t in table.AsEnumerable().AsQueryable()
select new
{
for (i = 0 to ItemArray.length)
{
t.ItemArray[i]
}
}
使用SelectMany()
:
var items = table.AsEnumerable().SelectMany(row=>row.ItemArray);
您还可以按行对项目进行分组:
var items = from row in dt.AsEnumerable()
from item in row.ItemArray
group new {item} by row;
听起来好像您需要SelectMany()
,但作为查询表达式更容易阅读:
var model = from row in table.AsEnumerable()
from item in row.ItemArray
select item;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.