LINQ to XML Вопрос: возврат узлов с определенным выбором - PullRequest
1 голос
/ 30 октября 2009

У меня есть этот XML:

<?xml version="1.0" encoding="utf-8"?>

    <ConfiguraCanale ID_Comando="1">
        <canaleDigitalOUTPUT ID_Canale="1" >
            <stato>0</stato>
        </canaleDigitalOUTPUT>
    </ConfiguraCanale>


    <ConfiguraCanale ID_Comando="2">
        <canaleAnalogicoINPUT ID_Canale="2">                
            <timeAttesaPreCamp>00:03:00</timeAttesaPreCamp> 
        </canaleAnalogicoINPUT>
    </ConfiguraCanale>      

    </Comandi>

Я должен выбрать узел canaleAnalogicoINPUT, и это просто, но я также должен взять ID_Comando из ConfiguraCanale до canaleAnalogicoINPUT .. потому что я выбираю узел canaleAnalogicoINPUT Я не могу получить атрибут узла ConfiguraCanale.

Я использую Linq to XML с небольшого времени ...

Спасибо !!!

Ответы [ 2 ]

0 голосов
/ 30 октября 2009
var inputs = from e in doc.Elements("ConfiguraCanale")
             select new 
             {
                 IDComando = e.Attribute("ID_Comando").Value,
                 CanaleAnalogicoINPUT = e.Element("canaleAnalogicoINPUT")
             };
0 голосов
/ 30 октября 2009

Это может быть что-то вроде этого:

var inputs = from e in doc.Descendants("canaleAnalogicoINPUT")
             select new
             {
                 CanaleAnalogicoINPUT = e, // extract what you need from this node
                 IDComando = int.Parse(e.Parent.Attribute("ID_Comando").Value)
             };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...