问题:我有一个包含大量数据的列表,我不知道如何将重复数据合并到一个单元中+它不应该影响其他单元.如果可能的话,希望每个都发生在同一个列表中而不创建更多列表来实现结果使用LINQ
CaseID ApproverID
1 23
1 45
1 56
2 33
2 90
3 58
3 79
Run Code Online (Sandbox Code Playgroud)
从更广泛的意义上讲,我想要一个类似caseID 1和approverID AS的东西 23 ,45,56
MyData
.GroupBy(d => d.CaseID)
.Select(g => new{
CaseID = g.Key,
ApproverIds = g.Select(x => x.ApproverID).ToList()})
//.Select(x => new{
// x.CaseID,
// approverIdsString = string.Join(", ", x.ApproverIds)})
Run Code Online (Sandbox Code Playgroud)
最后一部分被注释掉了,因为以逗号分隔的列表字符串很少是个好主意.