Вопрос по linq – Вопрос Linq to XML Noob - различен и упорядочен по атрибутам

3

Я только начинаю использовать Linq to XML, и у меня есть простой документ с такими записями:

<record date="6/27/2002" symbol="DG" price="15.00" />

Я хочу список различных символов в виде строк, по порядку.

Это дает мне неупорядоченный список всех атрибутов, но я застрял

var query =
  from e in xml.Elements()
  select e.Attribute("symbol");

Как это можно изменить, чтобы дать мне то, что я хочу?

Ваш Ответ

2   ответа
2

var query = xml.Elements()
               .Select(e => (string)e.Attribute("symbol"))
               .Distinct()
               .OrderBy(x=>x);
7

    var query = (from e in xml.Elements()
                 let symbol = (string)e.Attribute("symbol")
                 where symbol != null
                 orderby symbol
                 select symbol).Distinct();
Круто, ты молодец, Марк.
Enumerable.Distinct () не переупорядочивает объекты в .net 3.5, но документы не обещают этого в будущем. Сначала я бы определил, затем применил бы порядок к отдельному набору.msdn.microsoft.com/en-us/library/bb348436.aspx & quot; метод возвращает неупорядоченную последовательность & quot;
Достаточно справедливо - хорошее место. Как деталь реализации, в настоящее время он сохраняет порядок, но вы правы: документация не гарантирует этого.

Похожие вопросы