У меня есть выражение LINQ, которое получает значения атрибута XML из XML-файла.Получение значения атрибута из xml в C#
var xml = XElement.Load(@"C:\\StoreServer1.xml");
var query = from e in xml.Descendants("Groups")
where int.Parse(e.Element("Store").Value) == 1500
select e.Element("Store").Attribute("WeekDayStClose").Value;
И файл XML является:
enter<?xml version="1.0" encoding="utf-8" ?>
<Stores>
<Groups Range="000">
<Store WeekDayStClose="210" SatStClose="21" SunStClose="22">1500</Store>
<Store WeekDayStClose="23" SatStClose="24" SunStClose="25">18</Store>
<Store WeekDayStClose="23" SatStClose="24" SunStClose="25">19</Store>
</Groups>
</Stores>
Я только получаю результат атрибута (значение) для первого элемента 1500. Если я ищу то же самое для 18 она не возвращает никакого результата и никаких исключений. Любая помощь оценили .... Помощь Plz !!!
Это помогло. Большое спасибо. Что случилось с моей ошибкой ... что я сделал? – prasuangelo
Вы использовали 'e.Element (" Store ")' вместо 'Descendants (" Store ")' потому что 'Element'' Получает первый (в порядке заказа) дочерний элемент с указанным XName.' (source: MSDN) – erdinger