Запрос xml возвращает ноль при использовании Linq to XML

У меня есть следующий XML в файле:

<Person>
    <Name first="John" last="Doe" />
</Person>

Я загрузил XML-документ с XDocument.Load, но я не могу получить значения первого и последнего атрибута.

Я старался:

var q = from n in rq.Element("Name")
        select n;  //but q is null after this.

1 ответ

Решение

Вот пример, который должен работать с вашим XML-файлом:

var doc = XDocument.Load(...);

var query = from node in doc.Root.Elements("Name")
            select new           //      ↑
            {
                First = (string)node.Attribute("first"),
                Last  = (string)node.Attribute("last")
            };

foreach (var item in query)
{
    Console.WriteLine("{1}, {0}", item.First, item.Last);
}
Другие вопросы по тегам