Reemplazo de etiquetas en HtmlAgility

html-agility-pack

Pregunta

Estoy tratando de reemplazar todas mis etiquetas h1 con etiquetas h2 y estoy usando el paquete HtmlAgility.

Hice esto:

var headers = doc.DocumentNode.SelectNodes("//h1");
if (headers != null)
{
    foreach (HtmlNode item in headers)
    {
        //item.Replace??
    }
}

y me quedé atrapado allí. He intentado esto:

var headers = doc.DocumentNode.SelectNodes("//h1");
if (headers != null)
{
    foreach (HtmlNode item in headers)
    {
        HtmlNode newNode = new HtmlNode(HtmlNodeType.Element, doc, item.StreamPosition);
        newNode.InnerHtml = item.InnerHtml;
        // newNode suppose to set to h2
        item.ParentNode.ReplaceChild(newNode, item);
    }
}

El problema es que no tengo idea de cómo crear un nuevo h2, obtener todos los atributos, etc. Estoy seguro de que hay una forma sencilla de hacerlo, ¿alguna idea?

Respuesta popular

var headers = doc.DocumentNode.SelectNodes("//h1");
        if (headers != null)
        {
            foreach (HtmlNode item in headers)
            {
                item.Name = "h2"
            }
        }


Related

Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué