У меня есть документ HTML, открытый в двух окнах, и мне нужно синхронизировать выбранный узел между обоими окнами.
Использование Html Agility Pack Я пытался:
HtmlNode myNode = GetSomeCertainNode();
string xpath = myNode.XPath; //xpath = "/#comment[1]"
// This line throws an XPathException
var reExtract = myNode.OwnerDocument.DocumentNode.SelectSingleNode(xpath);
Сообщение об исключении: '/#comment[1]' has an invalid token.
Мне интересно, я взял XPath от самого узла, что означает, что это правильный XPath, и я использую его для того же документа, почему он не работает, что я пропускаю?
Обновление
При выборе некоторых других узлов вместо этого я получаю следующее исключение: Expression must evaluate to a node-set.
(xpath
содержит /html[1]/body[1]/div[1]/p[3]/strong[1]/#text[1]
).
Но помните, что значение берется из самого узла, поэтому оно очень странное. Почему он жалуется на то, что он недействителен?