Как объединить два Списка IGrouping?

Учитывая, что у меня есть два списка типа IGrouping:

List<IGrouping<long, string>>:
a) Key: 1 Values: "a", "b", "c"
        2         "d", "e"
b)      1         "aa", "bb", "cc"
        3         "f", "g"

И я хотел бы объединить оба:

Key: 1 Values: "a", "b", "c", "aa", "bb", "cc"
     2         "d", "e"
     3         "f", "g"

Кто-нибудь может помочь? Спасибо.

1 ответ

Решение

Я получил это работает, хотя и не лучшее решение.

    public static IList<IGrouping<T, TU>> MergeGroupingList<T, TU>( IList<IGrouping<T, TU>> groupings )
    {
        IEnumerable<KeyValuePair<T, TU>> temp = ( from grouping in groupings
                                                  from value in grouping
                                                  select new KeyValuePair<T, TU>( grouping.Key, value ) ).ToList();
        return temp.GroupBy( r => r.Key, r => r.Value ).ToList();
    }
Другие вопросы по тегам