Así que tengo un fragmento de HTML que quiero modificar con C#.¿Cómo uso HTML Agility Pack para editar un fragmento de HTML?
<div>
This is a specialSearchWord that I want to link to
<img src="anImage.jpg" />
<a href="foo.htm">A hyperlink</a>
Some more text and that specialSearchWord again.
</div>
y quiero transformarlo a esto:
<div>
This is a <a class="special" href="http://mysite.com/search/specialSearchWord">specialSearchWord</a> that I want to link to
<img src="anImage.jpg" />
<a href="foo.htm">A hyperlink</a>
Some more text and that <a class="special" href="http://mysite.com/search/specialSearchWord">specialSearchWord</a> again.
</div>
Voy a usar HTML agilidad componentes a base de las muchas recomendaciones aquí, pero no sé donde voy . En particular,
- ¿Cómo puedo cargar un fragmento parcial como una cadena, en lugar de un documento HTML completo?
- ¿Cómo se edita?
- ¿Cómo devuelvo la cadena de texto del objeto editado?
Gracias. Múltiples opciones Una cosa que sí aprendí jugando con la manipulación DOM es la utilidad del siguiente código: node.ParentNode.ReplaceChild (newNode, node) – John
HtmlDocument.DocumentNode.OuterHtml devuelve null y doc.Save() da StackOverflowException ¿Cómo puedo resolverlo? –
@NavinGupta tal vez, tiene nodos de autorreferencia – Alex