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?
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
.