Mic*_* B. 7 c# linq linq-to-objects grouping
我想第三列"项目"与分组的值.
Dictionary<string, int> dic = new Dictionary<string, int>();
dic.Add("a", 1);
dic.Add("b", 1);
dic.Add("c", 2);
dic.Add("d", 3);
var dCounts =
(from i in dic
group i by i.Value into g
select new { g.Key, count = g.Count()});
var a = dCounts.Where(c => c.count>1 );
dCounts.Dump();
a.Dump();
Run Code Online (Sandbox Code Playgroud)
此代码导致:
Key Count
1 2
2 1
3 1
Run Code Online (Sandbox Code Playgroud)
我想要这些结果:
Key Count Items
1 2 a, b
2 1 c
3 1 d
Run Code Online (Sandbox Code Playgroud)
Mat*_*ott 10
var dCounts =
(from i in dic
group i by i.Value into g
select new { g.Key, count = g.Count(), Items = string.Join(",", g.Select(kvp => kvp.Key)) });
Run Code Online (Sandbox Code Playgroud)
使用string.Join(",", {array})
,传入你的数组键.