我无法访问此查询中的项目:
var elem = from e in myDataTable.AsEnumerable()
where e.Field<string>("price") == "-1" &&
e.Field<string>("val") == "-1"
select e;
它返回EnumerableRowCollection,我如何访问这些值?或复制到另一个dataTable?
答案 0 :(得分:3)
使用foreach
循环,或致电CopyToDataTable()
。
如果您只想要序列中的第一项,您也可以拨打First()
或FirstOrDefault()
。
答案 1 :(得分:0)
尝试在结尾添加.ToList()
以执行LINQ语句并获取结果(DataRows列表):
var elem = (from e in myDataTable.AsEnumerable()
where e.Field<string>("price") == "-1"
&& e.Field<string>("val") == "-1"
select e).ToList();
然后你可以使用循环迭代结果。