2009-09-16 4 views
0

У меня есть файл Xml, и я пытаюсь прочитать значение с узла Ticket, но мой вывод по-прежнему пуст. Может кто-нибудь мне помочь?Как читать значение из 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> 

Мой код:

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

является: XmlNamespaceManager nsmgr = новый XmlNamespaceManager (doc.NameTable); nsmgr.AddNamespace ("ab", "http://tempuri.org/"); XmlNode temp = doc.SelectSingleNode ("// ab: Ticket", nsmgr); – 2009-09-16 08:05:39

ответ

0

Я думаю, что вы используете неправильный путь к узлу вы хотите, и использование '.InnerText'. Вот исправленный код:

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

это будет правильным для вашего требования дока = новый XmlDocument(); doc.Load (путь); XmlNode temp = doc.SelectSingleNode ("// TicketHeader/Ticket"); textBox3.Text = temp.InnerXml; спасибо,

КРГ раствор