C#对List<>进行遍历(group by)

该博客介绍了如何在C#中利用LINQ的GroupBy方法对数据进行聚合操作,将mainList中的记录按特定字段(productCode、productName和number)汇总到mainListLeft中。通过创建新的匿名类型并计算数量总和,实现了数据的整理和归类。此外,还提到了@Component、@Repository、@MapperScan等注解在Spring和Mybatis框架中的作用,以及它们在项目配置中的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mainlist 、mainListLeft 为已存在 list,此函数为汇总 mainlist 的内容到 mainListLeft 中

void gather()
        {
            mainListLeft.Clear();
            var query = from item in mainList
                        group item by new { 
                			item.productCode, 
                			item.productName, 
                			item.number, 
                			 } into g
                        select new Entity
                        {
                            productCode = g.Key.productCode,
                            productName = g.Key.productName,
                            number = g.Sum(p => p.number),
                        };
            mainListLeft = query.ToList();
        }

注:将原List通过 group by 的方式汇总成新的list,需要汇总计算的变量需为decimal类型

启动类添加扫描模板

@MapperScan("–.--.–.--.mapper")
@ComponentScan(–)
扫描:.xml文件 路径;例如 com.gwm.lms.asm.checked.mapper
@扫描注解 @Component @Controller @Service @Repository等等
@Mapper 一定要有,否则 Mybatis 找不到 mapper。
@Repository 可有可无,可以消去依赖注入的报错信息。
@MapperScan 可以替代 @Mapper。
@Component 和 @Repository 效果都是一样的,只是为了声明为bean

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值