You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将所有g.ToList()实例聚合到lstResult的Values集合中?

解决Result集合Values属性聚合问题

嘿,我来帮你搞定这个问题!你现在的代码只把每个分组里第一个元素的Value赋值给了Values,但我们需要把分组里所有元素的Value都聚合进这个列表。

修改思路

首先看你的Result类,Values是List<Value>类型,所以不能直接赋值单个Value,得把分组里所有元素的Value收集成一个列表再赋值。另外注意:g本身就是可枚举的分组集合(比如IGrouping类型),没必要反复调用g.ToList(),直接操作它就行。

修改后的完整代码

foreach (var g in data) 
{
    lstResult.Add(new Result 
    { 
        Key = g.Key, 
        // 提取分组中每个元素的Value,转成List<Value>
        Values = g.Select(item => item.Value).ToList() 
    }); 
}

public class Result 
{ 
    public string Key { get; set; } 
    public List<Value> Values { get; set; } 
}

额外说明

如果你的分组g里的元素本身就是Value类型(而不是包含Value属性的其他对象),那可以简化成:

Values = g.ToList()

这样直接把整个分组转成List<Value>就行,不用额外的Select投影。

内容的提问来源于stack exchange,提问作者user584018

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 21:08:11