Html Agility Pack - Supprimer un élément, mais pas innerHtml

Je peux facilement retirer l'élément simplement en note.Remove() lik ceci:

HtmlDocument html = new HtmlDocument();

html.Load(Server.MapPath(@"~\Site\themes\default\index.cshtml"));

foreach (var item in html.DocumentNode.SelectNodes("//removeMe"))
{
    item.Remove();
}

Mais qui supprime le innerHtml.
Que faire si je ne veux supprimer la balise, et de garder la innerHtml?

Exemple:

<ul>
    <removeMe>
        <li>
            <a href="#">Keep me</a>
        </li>
    </removeMe>
</ul>

Toute aide serait appréciée 🙂

Trouver le nœud parent du removeMe nœud et ajouter le innerHtml de la removeMe nœud parent du nœud innerHtml et supprimer? 🙂
Pensé, mais que faire si le nœud parent contient 5 nœuds imbriqués, et removeMe est le numéro 3, alors si j'ai ajouter le innerHtml de removeMe au nœud parent, la position n'est plus la même.
Eh bien peut-être que vous pouvez en fait remplacer le removeMe nœud par son innerHtml, ou d'insérer, après le nœud précédent, n'ont pas obtenu beaucoup d'expérience remplacer HTML à l'aide de HTMLAP, mais la navigation et la marche de l'arbre du DOM est vraiment facile.
Une autre solution serait d'utiliser la InsertAfter sur la suppression de moi, et insérez le innerHtml, puis retirez removeMe, mais je ne sais pas comment utiliser insertAfter correctement.
Bonne idée de l'essayer maintenant. Edit, il n'y a pas de remplacement de la méthode, seulement un replaceChild méthode.

OriginalL'auteur BjarkeCK | 2012-08-23