Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > Выделение полей с помощью linq


Автор: Stratus 27.7.2011, 19:42
Коллеги..

с помощью вот такой вот конструкции 
пытаюсь вытащить из текстового файла поля 
и сохранить таким способом чтобы у меня был потом доступ к этим полям(Array или List).
Код

            string[] Strings = System.IO.File.ReadAllLines(@"C:\StringList.txt");


            var Query =
                from line in Strings
                let SplitedStr = line.Split(new char[] { ';' })
                select SplitedStr[0] + SplitedStr[1];
            Query.ToList();


Проблема в том, что функция сплит их вроде разделяет а далее 
я никак не могу получить доступ к этим полям при переводе в Лист он их снова склеивает.

Может есть какой нибудь другой способ сделать это на Linq?

Автор: jonie 27.7.2011, 23:04
так вот же: select SplitedStr[0] + SplitedStr[1]; вы их сами обратно и склеили

Автор: Stratus 28.7.2011, 22:48
Хорошо, а как из Query забрать поля?

Автор: WarHog 28.7.2011, 23:57
сделай свой тип, верни его в select'е. Или используй анонимный тип
Код

var Query =
                from line in Strings
                let SplitedStr = line.Split(new char[] { ';' })
                select new { First = SplitedStr[0], Second = SplitedStr[1] };
var firstField = Query.First().First;
var secondField = Query.First().Second;

 - смотри по своему коду

Автор: Stratus 30.7.2011, 23:21
Спасибо! - помогли.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)