Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/02/2012, 15:11
celex
 
Fecha de Ingreso: abril-2007
Mensajes: 48
Antigüedad: 19 años, 6 meses
Puntos: 0
Como usa GetElementsByTagName de los xml en net

buenas tardes a todos, estoy pasando codigo de vb a vb net 2008 y debo de construir un archivo xml que debe contener cierta informacion pero en algunos momentos primero creo los atributos y despues se debe de actualzar los datos.

tengo en vb net declarado un xmldocument con esto puedo accesar desde cualquier lado para ir añidiendo los elementos que necesito.

Código PHP:
Private Doc As New XmlDocument()

private 
Sub crea_ejemplo()
Dim dec As XmlDeclaration = Doc.CreateXmlDeclaration("1.0","UTF-8", "yes")
Doc.AppendChild(dec)

Dim DocRoot As XmlElement = Doc.CreateElement("Comprobante")   

atributoscomprobante(DocRoot)
sellar
Doc
.Save("C:\OutDocument.xml")
end sub

Private Sub atributoscomprobante(acepta As XmlElement) 
        
Dim atrib As XmlNode        
                    
        entre otros atributos 
....
        
        
atrib = Doc.CreateAttribute("total")
        
atrib.Value = "350.00"
        
acepta.Attributes.Append(atrib)
                
        
atrib = Doc.CreateAttribute("noCertificado")
        
atrib.Value = ""
        
acepta.Attributes.Append(atrib)        
               
        
Doc.AppendChild(acepta)
End Sub

private sub sellar()
dim noCertificado as string = "30001000000100000800" variables x definidas
Doc
.GetElementsByTagName("Comprobante", "http://www.lapagina/2")(0).Attributes("noCertificado").Value = noCertificado
Doc
.GetElementsByTagName("Comprobante", "http://www.lapagina/2")(0).Attributes("Certificado").Value = Certificado
End Sub 
Se compila bien, al ejecutar me da el siguiente error: System.NullReferenceException: Object reference not set to an instance of an object.
lo que necesito es con la funcion GetElementsByTagName actualizar datos a ciertos atributos que puedo hacer
No necesito recorrer los valores sino establecerlos
gracias