如果linq是DataTable,如何得到查询结果?
任何人都能告诉我们,如何获得LINQ查询的结果包含GROUPBY to DataTable如果linq是DataTable,如何得到查询结果?,linq,c#-4.0,Linq,C# 4.0,任何人都能告诉我们,如何获得LINQ查询的结果包含GROUPBY to DataTable var query= from d in dtable.AsEnumerable() group d by d["Id"]; WId FirstName LastName Age 1 Jass we 23 1 Mady wer 54 3 Servy gr 22 4 Jan fr
var query= from d in dtable.AsEnumerable()
group d by d["Id"];
WId FirstName LastName Age
1 Jass we 23
1 Mady wer 54
3 Servy gr 22
4 Jan fr 11
Expected
WId FirstName LastName Age
1 Jass we 23
3 Servy gr 22
4 Jan fr 11
谢谢
Pradeep如果您只想在每个ID组中选择第一个人:
var distinctIdPersons = from p in dtable.AsEnumerable()
group p by p.Field<int>("WId") into IdGroups
select IdGroups.First();
你想要实现什么?您对什么结果感兴趣?除了Id之外,我还有4列。我想将所有查询结果读取到DataTable。您尝试过了吗?除了循环遍历结果之外,还有其他解决方案吗?您能写出您实际期望的内容吗<代码>var没有告诉我们任何有用的信息。
distinctIdPersons = dtable.AsEnumerable().GroupBy(r => r.Field<int>("WId"))
.Select( g => g.First());
var output = string.Join(", ", distinctIdPersons.Select(r =>
r.Field<string>("FirstName") + " " + r.Field<string>("LastName")));
Console.WriteLine(output); // Jass we, Servy gr, Jan fr