Поиск по числовому XML атрибуту - C#

Узнай цену своей работы

Формулировка задачи:

на msdn нашел пример поиск элемента по, атрибуту.
Листинг программы
  1. XElement root = XElement.Load("PurchaseOrder.xml");
  2. IEnumerable<XElement> address =
  3. from el in root.Elements("Address")
  4. where (string)el.Attribute("Type") == "Billing"
  5. select el;
  6. foreach (XElement el in address)
  7. Console.WriteLine(el);
Листинг программы
  1. <?xml version="1.0"?>
  2. <PurchaseOrder PurchaseOrderNumber="99503" OrderDate="1999-10-20">
  3. <Address Type="Shipping">
  4. <Name>Ellen Adams</Name>
  5. <Street>123 Maple Street</Street>
  6. <City>Mill Valley</City>
  7. <State>CA</State>
  8. <Zip>10999</Zip>
  9. <Country>USA</Country>
  10. </Address>
  11. <Address Type="Billing">
  12. <Name>Tai Yee</Name>
  13. <Street>8 Oak Avenue</Street>
  14. <City>Old Town</City>
  15. <State>PA</State>
  16. <Zip>95819</Zip>
  17. <Country>USA</Country>
  18. </Address>
  19. <DeliveryNotes>Please leave packages in shed by driveway.</DeliveryNotes>
  20. <Items>
  21. <Item PartNumber="872-AA">
  22. <ProductName>Lawnmower</ProductName>
  23. <Quantity>1</Quantity>
  24. <USPrice>148.95</USPrice>
  25. <Comment>Confirm this is electric</Comment>
  26. </Item>
  27. <Item PartNumber="926-AA">
  28. <ProductName>Baby Monitor</ProductName>
  29. <Quantity>2</Quantity>
  30. <USPrice>39.98</USPrice>
  31. <ShipDate>1999-05-21</ShipDate>
  32. </Item>
  33. </Items>
  34. </PurchaseOrder>
Но что делать, если при поиске атрибут необходимо сравнить с каким-то числом (не целым) ?
такое не проходит
Листинг программы
  1. Convert.ToDouble((string)el.Attribute("type")) >ball //ball переменная типа float/double

Решение задачи: «Поиск по числовому XML атрибуту»

textual
Листинг программы
  1. Convert.ToDouble((string)el.Attribute("type").Value) >ball

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.867 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут