C# 带计数的嵌套排序组

C# 带计数的嵌套排序组,c#,linq,C#,Linq,我试图找出如何获取一个列表,并获得一个组列表,每个组列表包含总数量的组。我能够完成第一个goup,并且四处查看了使用LINQ进行嵌套组的情况,但是不确定如何使它与我需要的信息一起工作。下面是一个示例列表和我目前使用的编码 样本清单 var list = new[] { new { Product = "Product1", Category = "Category1", Issue = "Issue1" }, new { Product = "Product1", Categor

我试图找出如何获取一个列表,并获得一个组列表,每个组列表包含总数量的组。我能够完成第一个goup,并且四处查看了使用LINQ进行嵌套组的情况,但是不确定如何使它与我需要的信息一起工作。下面是一个示例列表和我目前使用的编码

样本清单

var list = new[] {
    new { Product = "Product1", Category = "Category1", Issue = "Issue1" },
    new { Product = "Product1", Category = "Category1", Issue = "Issue2" },
    new { Product = "Product2", Category = "Category2", Issue = "Issue1" },
    new { Product = "Product3", Category = "Category1", Issue = "Issue2" },
    new { Product = "Product2", Category = "Category2", Issue = "Issue1" },
    new { Product = "Product1", Category = "Category1", Issue = "Issue" },
}.ToList()
示例代码

var topIssues = from issue in storage.Issues
                group issue by new {issue.Category, issue.Issue} into issueGroup
                let count = issueGroup.Count()
                orderby count descending
                select new { Issue = issueGroup.Key, Count = count};

我正在做一个由Category和Issue定义的组,然后我需要每个组中的项目计数,以及按此降序排列的列表。但是,我希望在这些产品中有一个组,该组还包含每个产品的项目计数,并且也是按降序排列的。任何帮助都将不胜感激。

您能显示预期输出吗?您能显示预期输出吗?非常感谢,现在我看了您的示例,这就更有意义了。
var topIssues = (from issue in list
                group issue by new {issue.Category, issue.Issue}
                into issueGroup
                select new
                {
                    Issue = issueGroup.Key, 
                    Count = issueGroup.Count(),
                    GP = (from i in issueGroup group i by i.Product into gp select new
                    {
                        Product = gp.Key, Count = gp.Count()
                    }).OrderByDescending(g=>g.Count)
                }).OrderByDescending(d=>d.Count);