C#Linq问题GROUP BY?

Bre*_*ett 3 .net c# linq

我有一个集合List<CustomClass>,我试图找到一种方法来返回一个字段,该字段对应于发生次数最多的另一个字段.我过去曾问过类似的问题,但我不确定如何将逻辑扩展到自定义类.例如.

CustomClass有三个公共财产:

Title
Mid
Eid
Run Code Online (Sandbox Code Playgroud)

并且List<CustomClass> MatchedFeatures = List<CustomClass>();a循环填充.

我需要执行一个Linq操作来返回Mid具有最多相同数量的类的类Eid.所以我们正在计算相同的Eid列.

我试过用

var TopResult = MatchedFeatures.GroupBy(MatchedFeature => MatchedFeature).OrderByDescending(group => group.Count()).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

但它不会返回我想要的东西.

任何人都可以看到我错在哪里?我正在使用C#

这是上一个问题,似乎工作正常.现在如何在这种情况下扩展它......? C#中简单的LINQ问题

非常感谢,布雷特

sep*_*p2k 6

如果要对Eid属性相同的那些功能进行分组,则应使用GroupBy(MatchedFeature => MatchedFeature.Eid).

如果你遗漏它,.Eid它只会将那些完全相同的特征组合在一起 - 而不是那些具有相同特征的特征Eid.