Сортировать вложенный список и словарь - PullRequest
0 голосов
/ 06 декабря 2018

Как мне добиться сортировки List<Dictionary<string, string>>.

Я бы хотел отсортировать список по первому элементу в Словаре.

Мои данные Похоже

{
{{PID,A123},{SKU,TA50},{QTY,50}},
{{PID,C123},{SKU,TA52},{QTY,50}},
{{PID,B123},{SKU,TA53},{QTY,50}},
{{PID,A222},{SKU,TA54},{QTY,50}}
}

Я пытаюсь получить вывод, похожий на

{
{{PID,A123},{SKU,TA50},{QTY,50}},
{{PID,A222},{SKU,TA54},{QTY,50}},
{{PID,B123},{SKU,TA53},{QTY,50}},
{{PID,C123},{SKU,TA52},{QTY,50}}
}

Список проверенных решений. Сортировка - не работает, так как содержимое словаря.list.OrderBy - Метод недоступен.

Технология работает над - Visual Studio Community 2017, .NET 4.6.1, Консольное приложение

Ответы [ 2 ]

0 голосов
/ 06 декабря 2018

Если вы хотите отсортировать список по ключу словаря, то

var result = list.OrderBy(dict => dict["PID"]).ToList();

Вам нужно пометить using System.Linq; в вашей программе, чтобы использовать OrderBy в intellisense.

0 голосов
/ 06 декабря 2018

Как насчет Linq OrderBy() в сочетании с ключом доступа к словарю ["PID"]

items = items.OrderBy(x => x["PID"]).ToList();

, поэтому Dictionaies упорядочены, но сами не имеют порядка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...