Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/12/2010, 11:24
Lain1010
 
Fecha de Ingreso: enero-2007
Mensajes: 26
Antigüedad: 18 años, 2 meses
Puntos: 0
Pregunta Crear XmlElement con prefijo y nameSpace

Buenas a todos, Estoy intentado modificar el documento xml de un archivo docx.

Estos archivos tienen una estructura particular ya que indican el namaspace al inicio de cada nodo, como en este ejemplo:

Código:
 <w:tc>
          <w:tcPr>
            <w:tcW w:w="816" w:type="dxa" />
            <w:tcBorders>
              <w:top w:val="single" w:sz="12" w:space="0" w:color="auto" />
              <w:left w:val="single" w:sz="4" w:space="0" w:color="auto" />
              <w:bottom w:val="single" w:sz="12" w:space="0" w:color="auto" />
              <w:right w:val="single" w:sz="12" w:space="0" w:color="auto" />
            </w:tcBorders>
            <w:vAlign w:val="center" />
          </w:tcPr>
          <w:p w:rsidR="007866F9" w:rsidRPr="00D46CD3" w:rsidRDefault="007866F9" w:rsidP="007866F9">
            <w:pPr>
              <w:spacing w:after="60" />
              <w:jc w:val="center" />
              <w:rPr>
                <w:rFonts w:cs="Arial" />
                <w:sz w:val="18" />
                <w:szCs w:val="18" />
              </w:rPr>
            </w:pPr>
            <w:r w:rsidRPr="00D46CD3">
              <w:rPr>
                <w:rFonts w:cs="Arial" />
                <w:sz w:val="18" />
                <w:szCs w:val="18" />
              </w:rPr>
              <w:t>DATE</w:t>
            </w:r>
          </w:p>
        </w:tc>
El tema es que tengo que añadir algunos nodos en el documento manualmente mediante c#, como por ejemplo el <w:t></w:t> del ejemplo anterior.

He intentado lo siguiente:

Código:
XmlElement wt = xmlDoc.CreateElement("w:t", "http://schemas.openxmlformats.org/wordprocessingml/2006/main");
wt.InnerText = newText;
bookmarkStartNode.AppendChild(wt);
Al abrir el documento me encuentro con que el nodo se presenta con este formato:

<t></t> Lo cual es un problema porque me deja el archivo corrupto.

¿Sabéis alguno cómo puedo añadir el namespace, mediante el uso del objeto XmlElement? Lo he dado mil vueltas pero de momento no tengo éxito :S

Muchas gracias por la posible ayuda. Un saludo.