2012-02-25 2 views
1

Я пытаюсь загрузить атрибут из простого XML-файла. содержимое XML выглядит следующим образом:читать из xml в переменную (Windows Phone 7)

<top> 
    <levels> 
     <number>4</number> 
    </levels> 
</top> 

И я хочу, чтобы получить, что «4» в переменную, и я не могу понять, как сделать это правильно.

Я пытался что-то вроде этого:

XDocument xdoc = XDocument.Load("levelsXml.xml"); 
var levels = from query in xdoc.Descendants("levels") 
select nrOfLevelsCompleted = Convert.ToInt32(query.Element("number")); 

ответ

2

Если ваш файл XML всегда имеет один <levels /> элемент, вы можете попробовать

int levels = Convert.ToInt32(xdoc.Descendants("levels") 
           .Single().Element("number").Value); 
+0

Да мой XML всегда имеет один элемент, и я выиграл У меня меньше тегов, на самом деле мне нужно только число. Я попробовал код, но он сбой .. – Varkaf

+0

@ Varkaf [Этот фрагмент] (http://pastie.org/3457597) работает для меня в linqpad. Может ли авария быть несвязанной с этим фрагментом? –

+0

Спасибо! Проблема заключалась в том, что я использовал Build Action: Resource. О, и теперь, как я могу изменить это число? – Varkaf