我有html
<cr:checkboxes name="name1">
<cr:checkbox label="Checkbox 1" />
<cr:checkbox label="Checkbox 2" />
<cr:checkbox label="Checkbox 3" />
</cr:checkboxes>
我正在使用html agility加载html
var document = new HtmlDocument();
document.LoadHtml(htmlString);
//select all nodes that starts with `cr:checkboxes`
document.DocumentNode.SelectNodes("//cr:checkboxes");
在选择我要例外时
System.Xml.XPath.XPathException:'命名空间管理器或XsltContext 需要。该查询具有前缀,变量或用户定义的函数。'
通常,在任何其他xml文档中,我都可以使用XmlDocument
并使用名称空间管理器添加名称空间来解决此问题
如何选择所有名称为cr:checkboxes
的节点
答案 0 :(得分:0)
这将解决您的问题。
var nodes = doc.DocumentNode.SelectNodes("//*[name()='cr:checkboxes']");
我找不到其他方法来用HtmlAgilityPack支持XmlNameSpaceManager。