我有一个清单List<string> Rank
列表 Rank 中的项目是
"FF"
"ABC"
"CC"
"FF"
"FF"
我想要一个 linq 查询,如果存在则返回值及其计数,假设如果我搜索“FF”,那么它应该返回
value: ff
count: 3
目前我正在使用此查询来查找匹配项
var match = Rank.FirstOrDefault(s => s.Contains("FF"));
并且此查询对相同的值进行分组并为其分配计数。
var f = Rank.GroupBy(x => x).Select(g => new { Value = g.Key, Count = g.Count() });
我试过这个,但它返回给我完整的列表,它看起来像 where 子句不是
var f = Rank.GroupBy(x => x).Select(g => new { Value = g.Key, Count = g.Count() }).Where(s => Rank.Contains("FF"));
谁能知道为什么第三个查询不起作用?