Salve a tutti,
ho un problemino nel recuperare da una stringa XML un nodo (attraverso XPATH).
L'xml è questo:
Io leggo questo file con uno StreamReader e lo travaso su un XmlDocument:codice:<?xml version="1.0" encoding="UTF-8"?> <CBISEDADTechValSts xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:CBI:xsd:CBISEDADTechValSts.00.01.04 CBISEDADTechValSts.00.01.04.xsd" xmlns="urn:CBI:xsd:CBISEDADTechValSts.00.01.04" xmlns:LMSG="urn:CBI:xsd:CBISEDADTechValStsLogMsg.00.01.04"> <PhyMsgInf> <OrgnlPhyMsgInfAndSts> ... </OrgnlPhyMsgInfAndSts> </PhyMsgInf> <CBISEDADTechValStsLogMsg> ... </CBISEDADTechValStsLogMsg> </CBISEDADTechValSts>
codice:StreamReader sr = new StreamReader("blablabla/seda_validazione.xml", Encoding.Default); string xml = sr.ReadToEnd(); XmlDocument xmlDocument = new XmlDocument(); xmlDocument.LoadXml(xml);
Fatto questo vorrei farmi dare tutti gli elementi CBISEDADTechValStsLogMsg:
codice:XmlNamespaceManager xmlNamespaceManager = new XmlNamespaceManager(oXml_Flusso.NameTable); xmlNamespaceManager.AddNamespace("BODY", "urn:CBI:xsd:CBISEDADTechValStsLogMsg.00.01.04"); xmlNamespaceManager.AddNamespace("DISTINTA", "urn:CBI:xsd:CBIBdySEDADTechValSts.00.01.04"); xmlNamespaceManager.AddNamespace("FIRMA", "urn:CBI:xsd:CBISgnInf.001.04"); var nodes = xmlDocument.SelectNodes("//CBISEDADTechValSts/CBISEDADTechValStsLogMsg", xmlNamespaceManager);
Gli xsd sono stati aggiunti al progetto ovviamente.
Però sto sbagliando qualcosa con xpath credo perché nodes è sempre vuoto, sarà l'ora ma non capisco cosa sbaglio :/ Qualche idea? Grazie![]()

Rispondi quotando