Форум программистов, компьютерный форум, киберфорум
Наши страницы

LINQ

Войти
Регистрация
Восстановить пароль
 
MRabaev
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
#1

LINQ to XML: Получить значения всех аттрибутов узла - LINQ

27.12.2015, 21:00. Просмотров 347. Ответов 2
Метки нет (Все метки)

Друзья, всем привет.
Кто нибудь может подсказать как написать правильно запрос, используя xml linq, для того, чтобы достать все значения currency и rate из xml по ссылке?

http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml

Сам написал вот что, но понимаю что это полный бред.
Проблема в том, что имеется несколько родительских узлов с одинаковыми именами.
Заранее огромное спасибо.

C#
1
2
3
4
5
6
7
 var elements = from xDoc in xDocument.Descendants("Cube")
                        where xDoc.Attribute("currency") != null && xDoc.Attribute("rate") != null
                        select new
                        {
                            name = (string)xDoc.Attribute("currency").Value,
                            rate = (string)xDoc.Attribute("rate").Value
                        };
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2015, 21:00
Я подобрал для вас темы с готовыми решениями и ответами на вопрос LINQ to XML: Получить значения всех аттрибутов узла (LINQ):

LINQ to XML: Заменить значения атрибутов всего узла - LINQ
Можно ли заменить значения атрибутов всего узла UserCart для юзера с именем user? Например, <Products_> ...

Поиск узла по атрибуту с помощью LINQ to XML - LINQ
Как найти узел по атрибуту и удалить? Как найти узел по атрибуту и изменить значения в дочерних елементах? через linq

LINQ to XML: Вывести значения атрибутов из файла - LINQ
Доброго времени суток, форумчане! Подскажите что не так в моём коде, не судите строго новичка:) Нужно из XML файла считать значение...

Как получить значения объектов класса используя IEnumerable и linq - LINQ
Добрый день! Пожалуйста помогите. Как получить значения объектов класса Class1, используя IEnumerable и linq и вывести их на экран? ...

Как получить значение одного узла по значению другого узла? - LINQ
Всем благополучия. Помогите разобраться с вроде несложной ситуацией, плз. Есть простенький XML файл: <Name>Тип документа</Name>...

При помощи LINQ to XML считать параметры из XML - LINQ
Помогите при помощи LINQ to XML считать следующие параметры из XML: id, first_name, last_name Вот мой XML <?xml version="1.0"...

2
Ev_Hyper
Заблокирован
28.12.2015, 02:14 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
MRabaev, подход правильный, вы только забыли добавить namespace:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
            XDocument xd = XDocument.Load("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml");
            var xname = xd.Root.GetDefaultNamespace();
            var xs =
                xd.Root
                .Descendants(xname + "Cube")
                .Where(x => x.Attribute("currency") != null && x.Attribute("rate") != null)
                .Select(x =>
                    new
                    {
                        currency = (string)x.Attribute("currency"),
                        rate = (double)x.Attribute("rate")
                    })
                 .ToList();
            xs.ForEach(Console.WriteLine);
https://dotnetfiddle.net/TOXGrR

P.S. .Value и так вернет string, но лучше кастовать, чем обращаться к свойству.
1
MRabaev
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43
28.12.2015, 14:12  [ТС] #3
Огромное спасибо!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2015, 14:12
Привет! Вот еще темы с ответами:

Парсинг XML-файла с помощью LINQ to XML - LINQ
Здрасивуйте. Трабл никак не могу понять в чем дело не могу считать инфу с XML login, getWorkersOUs надо записать в textBox а все c...

Получение узла XML - LINQ
День добрый. Имеется следующий XML: <?xml version="1.0" encoding="utf-8"?> <Report...

Linq и xml (добавить элемент) - LINQ
Здравствуйте, помогите пожалуйста люди добрые. Имеется xml файл со следующим ветвением: <root> <car id="1"> <km> ...

Linq XML - повторяющийся атрибут - LINQ
Здравствуйте! Помогите решить проблему. Есть код: XDocument doc = new XDocument( new XElement("Cards", new XElement("Card",...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru