2015-07-08 1 views
0

Так в основном, работает на файл XML, который выглядит следующим образом:C# чтение файла XML, значение узла возвращается как пустой

... 
<city id="thatstheid"> 
    <country id="anotherid"> VALUE </country> 
</city> 
... 

и я прочитал материал, я обязательно с помощью:

XmlDocument doc;//let's say this is the file im reading 

XmlNode cityNode = doc.DocumentElement.SelectSingleNode("city"); 
cityname = cityNode.Attributes["id"].Value; 

XmlNode countryNode = cityNode.SelectSingleNode("country"); 
countryname = countryNode.Value; 

проблема здесь в том, что

countryname = countryNode.Value; 

возвращает пустое значение, несмотря на то, что есть что-то внутри.

Если я пытаюсь получить какие-либо atributes изнутри, как это:

countryname = countryNode.Attributes["id"].Value; 

он отлично работает, поэтому я не знаю, в чем проблема.

+0

Вы можете проверить это: http://stackoverflow.com/questions/7877609/xmlnode-value-vs-innertext –

+0

@JeffreyWieder Большое спасибо, было интересно, почему это работал так, как сделал. –

ответ

1

Попробуйте InnerText

countryname = countryNode.InnerText; 
+0

Да, кажется, работает, спасибо большое, любая идея, почему .value не работает? Редактировать: nevermind, увидел комментарий на моем основном сообщении. –

Смежные вопросы