Html Agility Pack:设置HtmlNode的属性值不会反映在HtmlDocument中

html-agility-pack setattribute

在Html Agility Pack中,当我设置HtmlNode的属性时,我应该在从中选择节点的HtmlDocument中看到这个吗?

让我们说htmlDocument是一个HtmlDocument。所以简化的代码如下所示:

HtmlNode documentNode = htmlDocument.DocumentNode;
HtmlNodeCollection nodeCollection = documentNode.SelectNodes(someXPath);
foreach(var node in nodeCollection)
   if(SomeCondition(node))
       node.SetAttributeValue("class","something");

现在,我看到节点更改的类属性,但我没有看到这个更改反映在htmlDocument的html中。

一般承认的答案

实际上这是ProgrammerTooStupidException的一个案例:(

我使用了MyHtmlPage类,带有Html属性和DocumentProperty。

_html = theHtml;
_htmlDocument = new HtmlDocument();
HtmlDocument.LoadHtml(theHtml)l
_documentNode = HtmlDocument.DocumentNode;

现在,在使用Coourse操作时,DocumentNode对_html值没有影响。

发布此回复以清除HAP的名称。



Related

许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因