I Have XML из услуг Ответить, вот пример:Чтение XML по имени тега
<?xml version="1.0"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns4:loginResponse xmlns="http://www.website.com/IncTypes" xmlns:ns2="http://yyy.website.com/Security" xmlns:ns3="http://yyy.incognito.com/Service" xmlns:ns4="http:/yyy.website.com/wsdl/Security">
<ns2:errorCode>
<hasError>true</hasError>
<status>STATUS_ERROR</status>
<problemCode>-1</problemCode>
<problemMessage>Service Provider
not known</problemMessage>
<extendedInformation>Service Provider
not known</extendedInformation>
</ns2:errorCode>
</ns4:loginResponse>
</S:Body>
</S:Envelope>
Я просто хочу, чтобы получить значение этого тега
<hasError>true</hasError>
<status>STATUS_ERROR</status>
<problemCode>-1</problemCode>
<problemMessage>Service Provider
и вот мой C# код:
foreach (XmlNode node in loginresp.DocumentElement)
{
if (node.FirstChild.FirstChild.HasChildNodes == true)
{
foreach (XmlNode y in node.FirstChild.FirstChild.ChildNodes)
{
HasError = y.InnerXml;
status= y.InnerXml;
}
}
}
, но это дает мне ни HasError
и ErroCode
то же значение <ns2:errorCode>
который <extendedInformation>Service Provider not known</extendedInformation>
как я могу получить <hasError>true</hasError>
<status>STATUS_ERROR</status>
значение только?
Wow спасибо, работает правильно, да я пытался о xml.linq, но получаю сообщение об ошибке, и я забыл упомянуть пространство имен для проверки элемента. – Sabilv