Я пытаюсь объединить два SortedDictionaries
, изменить результат на List<KeyvaluePair<string,string>>
и Sort()
результат. Следующее утверждение выдает ошибку:
var combinedEntries = from p in leftDict.Union(rightDict).ToList().Sort(myComparer) select p;
Ошибка: не удалось найти реализацию шаблона запроса для типа источника 'void'. «Выбрать» не найдено.
Это не работает, потому что Sort () возвращает void. Если я разделю заявление, оно будет работать:
var combinedEntries = from p in leftDict.Union(rightDict) select p;
List<KeyValuePair<string, string>> finalentries = combinedEntries.ToList();
finalentries.Sort(comparer);
Я понимаю, что sort это метод типа List, а не IEnumerable
, но я подумал, что вызов ToList()
до Sort()
решит эту проблему. Итак, первый вопрос: можно ли это использовать, как я пытаюсь в первом утверждении? Если нет, то как мне использовать orderby
здесь?