2010-06-09 14 views
7

Este es mi archivo XMLInsertar nodo XML antes nodo específico usando C#

<employee> 
    <name ref="a1" type="xxx"></name> 
    <name ref="a2" type="yyy"></name> 
    <name ref="a3" type="zzz"></name> 
</employee> 

Utilizando C#, tengo que insertar este nodo

<name ref="b2" type="aaa"></name> 

entre los nodos "A3" "A2" y. Cualquier puntero cómo solucionar esto?

+0

¿Está utilizando XmlDocument o el Linq 2 XML (XDocument)? –

+0

estoy usando xmldocument – SAK

Respuesta

9

usar el método InsertAfter:

XmlDocument xDoc = new XmlDocument(); 
xDoc.Load(yourFile); 
XmlNode xElt = xDoc.SelectSingleNode("//name[@ref=\"a2\"]"); 
XmlElement xNewChild = xDoc.CreateElement("name"); 
xNewChild.SetAttribute("ref", "b2"); 
xNewChild.SetAttribute("type", "aaa"); 
xDoc.DocumentElement.InsertAfter(xNewChild, xElt); 
+0

Gracias PierrOz !!! – SAK