C#之linq和lamda表达式GroupBy分组拼接字符串

文章目录

C#之linq和lamda表达式GroupBy分组拼接字符串

业务需求

点击提示信息,如:"售后单【SH001】序列号【001,002,006】;售后单【SH002】序列号【003,007,009】。已经过了质保期,确认要继续关闭吗"

核心代码

csharp 复制代码
 //lamda表达式
 var errorMsgObj = getNoPay.GroupBy(s => s["FBILLNO"] + "")
                            .Select(d=>new { 
                                BillNo=d.Key,
                                NumberList=string.Join(",",d.Select(f=>f["FNUMBER"]+""))
                            }).ToList();


//Linq
var resultMsg = (from item in getNoPay
                    group item by item["FBILLNO"] into g
                    let numbers = g.Select(b => b["FNUMBER"]).ToArray()
                    select new
                    {
                        BillNo = g.Key,
                        NumberList = string.Join(",", numbers)
                    }).ToList();

调试

集合数据:

展示数据:

相关推荐
马剑威(威哥爱编程)11 小时前
Python 智能体开发实战 01:装了三遍环境还在报错?虚拟环境和 DeepSeek 一次配到位
开发语言·人工智能·python·agent
octopus_c11 小时前
C++ 入门
开发语言·c++·算法
步行cgn12 小时前
JSON.stringify 详解:把 JavaScript 对象变成 JSON 字符串
开发语言·javascript·json
Soneswy12 小时前
C++基础篇——类与对象(中)
开发语言·c++
CoderYanger12 小时前
Java EE 进阶:5. Spring IoC&DI(第二弹):Spring IoC
java·开发语言·spring boot·spring·面试·职场和发展·java-ee
青峰讲运维13 小时前
OpenStack Heat 编排:用模板一键交付云业务,告别手动点页面
开发语言·php·openstack
MyFreeIT13 小时前
Python Windows Manual
开发语言·python
胖纸不争13 小时前
EnergyStarZ:让 Windows 后台进程给前台让路的能效管理器(v1.2 发布)
windows·性能优化·c#·win32·ef core
kiracrimson13 小时前
STL:List的使用和模拟实现
开发语言·c++·list
北冥you鱼14 小时前
Go 语言 GORM 使用 Preload:从关联查询到嵌套预加载的完整实践
开发语言·jvm·golang