Возможно, кто-то может помочь с проблемой, которую у меня есть. Я получил этот XML данные:LINQ для загрузки определенных данных XML на основе значений
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<data>
<header>
<version>3.1</version>
<date>2013-04-02</date>
<filedate>2013-04-02</filedate>
</header>
<value>
<TypeId>67772764</TypeId>
<ServiceID>GN1600</ServiceID>
<EvbAsof>2013-04-02</EvbAsof>
<Rating>2</Rating>
<AdditionalColumns>
<Name>EvbAvg</Name>
<Value>7.29495</Value>
</AdditionalColumns>
<AdditionalColumns>
<Name>EvbHigh</Name>
<Value>12.46</Value>
</AdditionalColumns>
<AdditionalColumns>
<Name>EvbLow</Name>
<Value>2.88563</Value>
</AdditionalColumns>
<AdditionalColumns>
<Name>EvbBench</Name>
<Value>1.86241</Value>
</AdditionalColumns>
</value>
... ...
Мне нужно извлечь следующие данные, как набор для каждого узла:
- Дата с заголовка узла
- ТипID
- ServiceID
- Рейтинг
- EvbAvg значение из AditionalColumns
- значение EvbBench от AditionalColumns
мне удалось получить TypeID, ServiceID и рейтинг, но я просто не могу понять, как получить дату из заголовок и EvbAvg и EvbBench из узлов AditionalColumns все в одном запросе. Это мой код до сих пор:
var ServiceDesc = from c in XElement.Load("download.xml").Elements("value")
select new
{
TypeID = c.Element("TypeId").Value,
ServiceID = c.Element("ServiceID").Value,
Rating = c.Element("Rating").Value
}
Если кто-то может помочь мне с этим, я буду благодарен inifinitely. большое спасибо!
Большое спасибо, но на самом деле у меня есть один HEADER и несколько элементов VALUE. Также выясняется, что некоторые файлы XML будут пропускать некоторые элементы (bar HEADER), поэтому мне нужно правило проверки, чтобы вставить «Нет данных» в результат для отсутствующих элементов. Это становится все труднее. Благодаря! – George