我有一个包含10列的数据表。我只想选择它们的两列。
我无法使用SelectMany
扩展方法执行此操作。
我知道如何从Linq To DataSet获取它,但尝试使用此扩展方法。
答案 0 :(得分:5)
SelectMany
方法用于展平序列序列,而不是仅选择可用列的子集。请改用Select
方法:
var query = yourDataTable.AsEnumerable()
.Select(r => new { Column3 = r[3], Column6 = r[6] });
答案 1 :(得分:2)
SelectMany
是尝试使用的错误方法。您只需使用Select
并创建一个新的匿名对象:
dataTable.AsEnumerable().Select(r => new { r.Column1, r.Column7 });
SelectMany
用于展平嵌套集合。
答案 2 :(得分:0)
var s = table.Rows.Cast()。选择(....);