Я пытаюсь сделать SelectSingleNode
на XMLDocument
, используя выражение XPath.Однако, когда значение атрибута, которое я ищу, содержит несколько косых черт (/), он возвращает ноль.
Я не могу найти в сети никаких ресурсов для экранирования косой черты.Кто-нибудь знает способ обойти это?Или у меня неправильный синтаксис для соответствия значению атрибута?
Пример XML
<?xml version="1.0"?>
<Root>
<Page Path="/brand" />
<Page Path="/brand/armada" />
</Root>
Это выражение XPath возвращает правильный узел (например, первый в приведенном выше примере)
XmlNode N = xmlDoc.SelectSingleNode("Root/Page[@Path='/brand']");
Это выражение XPath возвращает нуль
XmlNode N = xmlDoc.SelectSingleNode("Root/Page[@Path='/brand/armada']");
Я нахожусь в среде C #, .net 3.5.
РЕДАКТИРОВАТЬ: Спасибо за ответы.Я решил проблему с помощью двойной косой черты в выражении выбора.
XmlNode N = xmlDoc.SelectSingleNode("Root//Page[@Path='/brand/armada']");