C# Как объединить значения в списке пар "имя-значение" с одинаковым именем?

У меня есть список, содержащий пары имя/значение

Класс выглядит так:

string Name { get; set; }
string Value { get; set; }

Что мне нужно сделать, так это объединить все значения с одинаковыми именами в новый список, где класс выглядит следующим образом:

string Name { get; set; }
list<string> Values { get; set; }

person Scott Boyte    schedule 31.01.2019    source источник
comment
Думаю, вам стоит взглянуть на это: ToLookup().   -  person John Wu    schedule 01.02.2019
comment
Руфус, ты спас положение. Это ИМЕННО то, что я искал. Спасибо!   -  person Scott Boyte    schedule 01.02.2019


Ответы (1)


Вы можете использовать метод LINQ GroupBy:

var result = yourList.GroupBy(x => x.Name, x => x.Value, 
    (k, g) => new YouSecondClass { Name = key, Values = g.ToList() });
person Kirill Polishchuk    schedule 31.01.2019