Сглаживание вложенных словарей с помощью LINQ - PullRequest
9 голосов
/ 07 декабря 2011

Итак, у меня есть словарь вида Dictionary<int, Dictionary<int, Object>> myObjects, и я хотел бы свести его к List<Object> flattenedObjects настолько просто, насколько это возможно. Я пытался найти умное решение, но пока все, что я получил, - это решение с двумя вложенными циклами foreach, которые перебирают все элементы, но я полагаю, что должен быть более хороший способ сделать это с помощью LINQ.

Ответы [ 2 ]

13 голосов
/ 07 декабря 2011

попробуйте

List<Object> flattenedObjects = myObjects.Values.SelectMany(myObject => myObject.Values).ToList();
7 голосов
/ 07 декабря 2011

Как это:

var result = myObjects.Values.SelectMany(d => d.Values).ToList();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...