nodos nodo net modificar manipular leer especifico escribir eliminar dato como borrar agregar xml ant insert xmltask

nodo - Insertar elemento XML en documento xml usando Ant



manipular xml c# (1)

Quiero insertar un elemento xml en el documento xml:

XML de entrada: -

<cus:try xmlns:cus="http://www.abc.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xt="http://www.efg.com"> <cus:trying> <cus:query> <xt:resourceTypes>abc</xt:resourceTypes> <xt:envValueTypes>def</xt:envValueTypes> </cus:query> </cus:trying> </cus:try>

Salida XML: -

<cus:try xmlns:cus="http://www.abc.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xt="http://www.efg.com"> <cus:trying> <cus:query> <xt:resourceTypes>abc</xt:resourceTypes> <xt:resourceTypes>bcd</xt:resourceTypes> <xt:envValueTypes>def</xt:envValueTypes> </cus:query> </cus:trying> </cus:try>

Eso significa que estoy tratando de insertar uno más con espacios de nombres. Necesito insertar exactamente como este ..

Lo estoy intentando debajo

<xmltask source="abc.xml" dest="abc.xml"> <insert path="//*[local-name()=''resourceTypes'']"> <![CDATA[ <xa:resourceTypes id="3"/> ]]> </insert> </xmltask>

Sin embargo, está fallando.


Para que <insert> funcione, explícitamente refiérase al espacio de nombres en el elemento. También <insert> , de forma predeterminada, coloca nuevos elementos debajo de los existentes. El código a continuación cambia el valor predeterminado a after .

<xmltask source="abc.xml" dest="abc.xml"> <insert path="//*[local-name()=''resourceTypes'']" position="after"> <![CDATA[ <xt:resourceTypes xmlns:xt="http://www.efg.com">bcd</xt:resourceTypes> ]]> </insert> </xmltask>

El XML resultante, basado en el XML en la pregunta:

<?xml version="1.0" encoding="utf-8" standalone="no"?> <cus:try xmlns:cus="http://www.abc.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xt="http://www.efg.com"> <cus:trying> <cus:query> <xt:resourceTypes>abc</xt:resourceTypes> <xt:resourceTypes>bcd</xt:resourceTypes> <xt:envValueTypes>def</xt:envValueTypes> </cus:query> </cus:trying> </cus:try>