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();

调试

集合数据:

展示数据:

相关推荐
Ai-_Man10 小时前
ChatGPT还是不可以导出左侧所有对话,只能点进去单条内容导出,方法不对吗?
开发语言·javascript·人工智能·chatgpt·小程序·ecmascript
问天_观心10 小时前
模型微调学习(二)
开发语言·人工智能·学习·语言模型·github
小羊没烦恼!10 小时前
深入浅出SQL Server中的死锁
java·开发语言·前端·数据库·后端·spring·c#
白露与泡影10 小时前
Java 面试八股文及答案整理 | 后端面试高频题(2026)
java·开发语言·面试
夜晚回家10 小时前
Python 赋值运算符详解 | 从 = 到 +=,一张记账单讲清复合赋值
开发语言·python
布莱克60510 小时前
QtWidgets 与 QML:两大 UI 开发框架的全面对比
开发语言·c++·qt·ui·架构
张伯毅10 小时前
External Shuffle Service(spark3_shuffle):原理、配置与排障
java·开发语言·spark·yarn
geovindu10 小时前
rust: Template Method Pattern
开发语言·后端·设计模式·rust·行为模式·模板方法模
小oo呆11 小时前
【学习心得】Python函数参数中的两个特殊分隔符
开发语言·python