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

调试

集合数据:

展示数据:

相关推荐
Cyber4K6 分钟前
【Python专项】基础语法(2)
开发语言·python
某人辛木12 分钟前
JDK安装配置
java·开发语言
fox_lht13 分钟前
第十章 通用集合
开发语言·后端·算法·rust
小王师傅6615 分钟前
【Java结构化梳理】泛型-初步了解-下
java·开发语言
SmartRadio32 分钟前
ESP32-S3 双模式切换实现:兼顾手机_路由器连接与WiFi长距离通信 (采用Arduino代码框架)
开发语言·智能手机·esp32·长距离wifi
njsgcs42 分钟前
solidworks自动标注折弯4 无向图 c#
开发语言·c#·solidworks
c++之路1 小时前
C++ 多线程
开发语言·c++
CHANG_THE_WORLD1 小时前
<Fluent Python > Unicode 文本与字节
开发语言·python
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题】【Java基础篇】第20题:HashMap在计算index的时候,为什么要对数组长度做减1操作
java·开发语言·数据结构·后端·面试·哈希算法·hash-index