Чтение атрибута xml ref в .NET - PullRequest
1 голос
/ 30 ноября 2010

Я могу сделать это в Xpath, но, к сожалению, для этого конкретного проекта я не могу использовать xpath.

У меня выбран следующий узел:

<client href="http://somewebsitehere.com" rel="needthisdata"></client>


clientnode.Attributes["href"].Value 

правильно возвращает "http://somewebsitehere.com",, но

clientnode.Attributes["rel"].Value

не работает?

Что я здесь не так делаю?

Полное использование:

foreach (XmlNode clientnode in clientnodelist)
{
    MessageBox.Show(clientnode.Attributes["rel"].Value);
}

Выше приведено исключение NullReferenceException, тогда как замена "rel" на "href" работает нормально.

Я уверен, что выбрал правильный узел, а также совпадения внутреннего текста, а также attribute.count, возвращающий 2.

Ответы [ 2 ]

2 голосов
/ 30 ноября 2010

Прочитайте ваш код.Вы используете clientnode в качестве переменной цикла, но вы ссылаетесь на selectednode.


Что если один конкретный узел не имеет атрибута "rel"?NullReferenceException.

0 голосов
/ 30 ноября 2010

Я бы добавил разрыв в цикл и взглянул на то, что находится в моей коллекции атрибутов.Кроме того, для удовольствия попробуйте изменить «rel» на что-то другое, чтобы посмотреть, решит ли это проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...