Получение данных из xml по значению атрибута C# с использованием XmlTextReader

У меня есть файл со следующим содержимым (myfile.xml). Мне нужно получить весь контент (включая узел продукта) под продуктом с id=1.

<products>  
  <product id="1">
       <category>q</category>  
  </product>    
  <product id="2">      
       <category>w</category>    
  </product>   
  <product id="3">       
  <category>e</category>   
 </product>
</products>`

то есть результат должен быть:

 <product id="1"> 
      <category>q</category>
  </product> 

Как я могу это сделать?

У меня есть ограничение, что я должен использовать XmlTextReader или XPathNavigator только для этого, иначе я мог бы использовать это: Получение данных из xml по атрибуту vlaue


person Kuttan Sujith    schedule 21.05.2012    source источник


Ответы (1)


Разве XmlReader.GetAttribute() не будет работать?

http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.getattribute(v=vs.100)

Добавьте Skip() для перемещения итератора:

http://msdn.microsoft.com/en-us/library/system.xml.xmlreader.skip(v=vs.100)

person user978122    schedule 21.05.2012
comment
в то время как (reader.Read()) {if reader.GetAtrribute(id)=...)) - person Kuttan Sujith; 21.05.2012