2009-09-16 6 views
0

J'ai un fichier Xml et j'essaye de lire la valeur du noeud Ticket, mais ma sortie est toujours vide. Quelqu'un peut-il m'aider?Comment lire la valeur de XmlNode

Xml docmunet:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
<soap:Header> 
<TicketHeader xmlns="http://tempuri.org/"> 
<Ticket> 
heslo 
</Ticket> 
</TicketHeader> 
</soap:Header> 
<soap:Body> 
<test xmlns="http://tempuri.org/"/> 
</soap:Body> 
</soap:Envelope> 

Mon code:

 doc= new XmlDocument(); 
    doc.Load(path); 
    XmlNode temp = doc.SelectSingleNode("//Ticket"); 
    textBox3.Text=temp.InnerXml; 
+0

est: XmlNamespaceManager nsmgr = new XmlNamespaceManager (doc.NameTable); nsmgr.AddNamespace ("ab", "http://tempuri.org/"); XmlNode temp = doc.SelectSingleNode ("// ab: Ticket", nsmgr); –

Répondre

0

Je pense que vous utilisez le mauvais chemin vers le nœud que vous voulez et utilisez '.InnerText'. Voici le code corrigé:

doc= new XmlDocument(); 
doc.Load(path); 
string ticket = doc.SelectSingleNode("//TicketHeader/Ticket").InnerText; 
0

ce sera le bon pour vos besoins doc = new XmlDocument(); doc.Load (chemin); XmlNode temp = doc.SelectSingleNode ("// TicketHeader/Ticket"); textBox3.Text = temp.InnerXml; , grâce

ARK solution

Questions connexes