是否可以将行与列分组,并将剩余数据合并到另一列中?

这是一张可以更好地理解问题并查看我想要实现的图像:

The wanted result http://img693.imageshack.us/img693/9227/linqgroupingquestion.gif

您可以看到按IdPlaceIdInternship分组以及带有详细信息或用户ID组成的新列IdUsers

我不在乎是否无法再使用新列中的数据,而是用于显示。

最佳答案

您正在寻找类似的东西:

var result =
  collection.GroupBy(x => new { x.IdPlace, x.IdInternship })
    .Select(x => new { x.Key.IdPlace, x.Key.IdInternship,
           IdUsers = String.Join(", ",
                        x.Select(c => c.IdUser.ToString()).ToArray()) });


(在.NET 4.0中不需要.ToArray()

07-24 20:12