首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GroupBy表达

GroupBy表达
EN

Stack Overflow用户
提问于 2013-03-06 04:07:24
回答 1查看 136关注 0票数 0

我有以下对象,并且我希望有一个结果,它提供了一个按第一个类别描述分组的对象集合,然后按照子类别描述进行分组:

类别(计数)

.Count=‘Count 2’>亚类(计数)

.Count=‘Count 2’>亚类(计数)

代码语言:javascript
复制
public class Posting
{
    public Category Category { get; set; }
    public SubCategory SubCategory { get; set; }
}

public class Category
{
    public string Description { get; set; }
}

public class SubCategory
{
    public string Description { get; set; }
}

编辑

所以我的工作是这样的:

代码语言:javascript
复制
foreach (var category in col.GroupBy(x => x.Category.Description).Select(x => new { CategoryName = x.Key, Items = x }).OrderBy(x => x.CategoryName))
            {
                Console.WriteLine(category.CategoryName);
                foreach (var subCategory in category.Items.GroupBy(x => x.SubCategory.Description).Select(x => new { SubCategoryName = x.Key }).OrderBy(x => x.SubCategoryName))
                {
                    Console.WriteLine("\t" + subCategory.SubCategoryName);
                }
            }

但是我想把它放到一个对象图中,这有可能吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-06 07:59:42

这似乎相当接近,但要注意的是,“内部”子类别组的Key字段是包含SubCategory和类别的匿名类型。但是,取决于您的应用程序正在做什么,这可能是一个功能,因为您将始终有可用的类别。

代码语言:javascript
复制
var results = col
    .GroupBy(posting => new
        {
            Category = posting.Category.Description,
            SubCategory = posting.SubCategory.Description
        })
    .GroupBy(group => group.Key.Category.Description);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15238793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档