c# - 对 ObervableCollection 进行分组并组合或连接 Values 检查 null 或空值并将它们按顺序排列
问题描述
我有一个 Observable 对象集合,需要组合在一起并将数量属性求和,但对象的其他一些属性也需要组合成一个新字符串,如果它们是唯一的,则用逗号或某种形式的分隔符分隔对于我的 sku 属性,它应该被分配第一个或不同的值。所以例如我的 observablecollection 有这样的数据..
我想出了这个 linq 语句
var groupedList = scannedList.ScannedCollection
.GroupBy(l => l.UPC)
.Select(g => new
{
UPC = g.First().UPC,
Sku = string.Join("|", g.GroupBy(sku => sku.Sku).Select(s => s.First().Sku)),
Location = string.Join(", ", g.GroupBy(loc => loc.Location).Select(k => k.First().Location)),
ReferenceCode = string.Join(", ", g.GroupBy(rc => rc.ReferenceCode).Select(r => r.First().ReferenceCode)),
Quantity = g.Sum(q => q.Quantity),
});
但是,如果属性中有空值与分隔符分组,它们有 A、、B 或 skunumber2||skunumber,最终会发生什么
如何删除空格或空空格并将组合值按降序或升序排列?