Я пытаюсь пройти XML-документ и выбрать определенные атрибуты узла. XML динамически генерируется.XPath и атрибуты
<?xml version="1.0" encoding="ISO-8859-1"?>
<streams>
<stream>
<title>+23 (Panama)</title>
<info resolution="768x420" bitrate="1000kbps"/> ----- Need These
<swfUrl>http://www.freeetv.com/script/mediaplayer/player.swf</swfUrl>
<link>rtmp://200.75.216.156/live/</link>
<pageUrl>http://www.freeetv.com/</pageUrl>
<playpath>livestream</playpath>
<language>Music</language>
<advanced></advanced>
</stream>
</streams>
код, который я пытаюсь использовать с нулевой удачи и Visual Studio, говоря: «Нет, вы ошибаетесь. Попробуйте более 600 раз» является
xDoc.Load("http://127.0.0.1/www/xml.php");
XmlNodeList nodes = xDoc.SelectNodes("/streams/stream");
foreach (XmlNode xn in nodes)
{
ListViewItem lvi = listView1.Items.Add(xn["title"].InnerText);
lvi.SubItems.Add(xn["swfUrl"].InnerText);
lvi.SubItems.Add(xn["link"].InnerText);
lvi.SubItems.Add(xn["pageUrl"].InnerText);
lvi.SubItems.Add(xn["playpath"].InnerText);
lvi.SubItems.Add(xn["language"].InnerText);
lvi.SubItems.Add(xn["advanced"].InnerText);
lvi.SubItems.Add(xn["//info/@resolution"].Value);
}
Скажите, пожалуйста, о чем те мудрые я делаю неправильно?
Дьявол кроется в деталях. Документы (и Intellisense) для индексатора по умолчанию «XmlNode» говорят _ «Первый ** XmlElement **, который соответствует указанному имени.» _. Атрибуты не являются элементами. –