要对 List 中的匿名类型按给定的字符串多条件进行分组求和,可以使用 LINQ 查询语句来实现。下面是一个示例代码:

var list = new List<dynamic>
{
    new { Name = "A", Category = "C1", Value = 10 },
    new { Name = "B", Category = "C1", Value = 20 },
    new { Name = "C", Category = "C2", Value = 30 },
    new { Name = "D", Category = "C2", Value = 40 },
    new { Name = "E", Category = "C3", Value = 50 },
};

var result = list.GroupBy(item => new { item.Category })
                 .Select(group => new
                 {
                     Category = group.Key.Category,
                     Sum = group.Sum(item => item.Value)
                 })
                 .ToList();

foreach (var item in result)
{
    Console.WriteLine($"Category: {item.Category}, Sum: {item.Sum}");
}

输出结果为:

Category: C1, Sum: 30
Category: C2, Sum: 70
Category: C3, Sum: 50

在示例代码中,我们首先创建了一个包含匿名类型对象的 List,每个对象都有 Name、Category 和 Value 属性。然后,我们使用 GroupBy 方法按 Category 属性进行分组,然后使用 Select 方法计算每个分组的 Value 总和,并将结果存储在新的匿名类型对象中。最后,我们将结果打印出来。

请注意,这个示例只是一个简单的演示,实际应用中,你可能需要根据你的具体需求来调整代码。

NET CORE 匿名类型分组求和:使用 LINQ 对 List<T> 按字符串多条件分组

原文地址: https://www.cveoy.top/t/topic/pUCd 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录