如果linq是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

任何人都能告诉我们,如何获得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       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