HTML Agility Pack entfernen Kinder

c# html-agility-pack

Frage

Ich habe Schwierigkeiten, ein div mit einer bestimmten ID zu entfernen, und seine Kinder verwenden das HTML Agility-Paket. Ich bin sicher, ich vermisse nur eine Konfigurationsoption, aber es ist Freitag und ich kämpfe.

Das vereinfachte HTML läuft:

<html><head></head><body><div id='wrapper'><div id='functionBar'><div id='search'></div></div></div></body></html>

Das ist soweit ich habe. Der vom Agility-Paket ausgelöste Fehler zeigt, dass er keine Div-Struktur finden kann:

<html><head></head><body><div id='wrapper'><div id='functionBar'><div id='search'></div></div></div></body></html>

Hier ist der Code soweit (aus Stackoverflow ....)

<html><head></head><body><div id='wrapper'><div id='functionBar'><div id='search'></div></div></div></body></html>

Akzeptierte Antwort

bodyNode.RemoveChild (functionBarNode, false);

Aber functionBarNode ist kein Kind von bodyNode.

Wie wäre es mit functionBarNode.ParentNode.RemoveChild(functionBarNode, false) ? (Und vergiss das bisschen über BodyNode zu finden.)


Beliebte Antwort

Sie können einfach anrufen:

var documentNode = document.DocumentNode;
var functionBarNode = documentNode.SelectSingleNode("//div[@id='functionBar']");
functionBarNode.Remove();

Es ist viel einfacher und macht dasselbe wie:

var documentNode = document.DocumentNode;
var functionBarNode = documentNode.SelectSingleNode("//div[@id='functionBar']");
functionBarNode.Remove();



Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum