У меня есть файл с простым форматом key,value
, по одному в каждой строке. например:Почему этот LINQ не обрабатывает файл правильно?
word1,filepath1
word2,filepath2
word3,filepath5
Я пытаюсь прочитать в Dictionary<string,string>
на одном дыхании с помощью LINQ. В файле есть несколько дубликатов (где первая часть - первая строка - это дубликат). В этом случае, я в порядке с удалением дубликатов.
Это мой LINQ, который не работает:
var indexes = File.ReadAllLines(indexFileName)
.Select(x => x.Split(','))
.GroupBy(x=>x[0])
.ToDictionary(x => x.Key, x => x.ElementAt(1));
ToDictionary
часть сбивает с толку меня, как я могу получить первое значение из группы, и присвоить ему значение словаря?
Я получаю исключение System.ArgumentOutOfRangeException: 'Specified argument was out of the range of valid values.'
.
поэтому вышеуказанный код не работает, любые erros? –
Похоже, что он не работает, как вы ожидаете этого. Что это дает вам? – krillgar
* как получить первое значение из группы * - метод aptly с именем 'First()' будет моим выбором. –