Перебирать несколько подузлов в XML

  <Sections>
    <Classes>
      <Class>VI</Class>
      <Class>VII</Class>
    </Classes>
    <Students>
      <Student>abc</Student>
      <Student>def</Student>
    </Students>    
  </Sections>

Мне нужно перебрать классы, чтобы получить «Класс» в массив строк. Мне также нужно перебрать «Студенты», чтобы «Студент» поместить в массив строк.

XDocument doc.Load("File.xml");
     string str1;
     foreach(XElement mainLoop in doc.Descendants("Sections")) 
       {   
          foreach(XElement classLoop in mainLoop.Descendants("Classes"))
                str1 = classLoop.Element("Class").Value +",";
       //Also get Student value
        }

не работает, чтобы получить все классы. Кроме того, мне нужно переписать этот без , используя LINQ to XML, то есть используя XmlNodeList и XmlNodes.

XmlDocument doc1 = new XmlDocument();
doc1.Load("File.xml");
foreach(XmlNode mainLoop in doc.SelectNodes("Sections")) ??

Не знаю, как это сделать.

8
задан Brian 9 June 2011 в 16:32
поделиться