Я предполагаю, что вы имеете в виду настоящий DataSet.Я никогда больше не использую их, так что мой синтаксис может быть немного отключен, но основная идея заключается в том, чтобы сгруппировать первый столбец по второму столбцу, а затем из этого выбрать ключ группировки (второй столбец) и объединенные результатыгруппирование.
using System.Data;
using System.Linq;
var display = ds.AsEnumerable()
.GroupBy( r => r[1], r => r[0] )
.Select( g => new
{
RecreationType = g.Key,
Examples = string.Join( ",", g.Select( e => e.ToString() )
.ToArray() )
} );
Если это действительно список объектов, который у вас есть, то вы можете изменить его на группирование по определенному свойству (вместо номера столбца) и, возможно, пропустить ToString()
во внутреннемпредложение select (поскольку это уже строго типизированное строковое свойство).