Html Agility Pack - Neues HtmlAttribute

c# html html-agility-pack

Frage

Wenn ich das Html Agility Pack in C # verwende, habe ich einen Knoten, dem ich ein Attribut hinzufügen möchte.

Momentan ist der Knoten ein <li> Element ohne Attribute und ich möchte eine Klasse von "aktiv" hinzufügen.

Es sieht so aus, als wäre das beste Ding node.Attributes.Add(attrClass)

Wobei attrClass ein HtmlAttribute der class="active" .

Wenn ich jedoch versuche, ein neues HtmlAttribute zu definieren, HtmlAttribute ich eine Fehlermeldung, dass es keine Konstruktoren gibt. ZB HtmlAttribute attrClass = new HtmlAttribute();

Ist etwas falsch mit meiner Html Agility Pack Referenz, oder mache ich etwas falsch?

Gibt es eine andere Methode, um mein Ziel zu erreichen?

Akzeptierte Antwort

node.Attributes.Add("class","active");

Beliebte Antwort

Die HtmlAttribute Klasse hat einen Konstruktor, der internal . Daher hätten Sie keinen Zugriff darauf, sie tatsächlich aufzurufen, so dass Sie einen Fehler erhalten würden.

Es ist jedoch an anderer Stelle in der HtmlDocument Klasse HtmlDocument .

Damit:

HtmlDocument document = new HtmlDocument();
var attribute = document.CreateAttribute("class", "active");

Sie haben dann ein HtmlAttribute das das class mit dem Wert active .



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