XDocument/xNamespace
<AllscriptsMessageEnvelope xmlns="http://Allscripts.com/UAI/Schemas/2010/02/15" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns4="urn:Allscripts:Hub:PatientMsg" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MessageDispatchHeader>
<ID xmlns="">229dd2a9-9c6c-49c5-aebe-3210c7b00df2 </ID>
<Noun xmlns="">Message</Noun>
<Verb xmlns="">Received</Verb>
<TimeStamp xmlns="">2011-06-23T22:06:52</TimeStamp>
<Description xmlns="">Rx Hub Message</Description>
<Originator xmlns="">
<OriginatorName />
</Originator>
<Destination xmlns="">
<SendToName />
</Destination>
</MessageDispatchHeader>
<EntityContext />
<MessageContent xmlns="">
<ns4:MessageProcessed>
<ns4:ReplyToMessageID>0906b2b2-e690-459f-82f0-82d6c33e6e03</ns4:ReplyToMessageID>
<ns4:TransportStatus>Success</ns4:TransportStatus>
<ns4:ApplicationStatus>Success</ns4:ApplicationStatus>
<ns4:Datetime>2011-06-23T22:06:52</ns4:Datetime>
<ns4:Comment>Message Accepted by Rx Hub.</ns4:Comment>
<ns4:AdditionalDetails>
<ns4:AdditionalDetail>Delive开发者_开发问答red using RxPrescriptionService WCF Service</ns4:AdditionalDetail>
</ns4:AdditionalDetails>
</ns4:MessageProcessed>
</MessageContent>
</AllscriptsMessageEnvelope>
How to get the value of <ns4:ApplicationStatus>Success</ns4:ApplicationStatus>
?
var xdocument = XDocument.Load(@"C:\1.xml");
var result = xdocument.Descendants(XName.Get("ApplicationStatus", "urn:Allscripts:Hub:PatientMsg")).First().Value;
Or
var result = xdocument.XPathSelectElement("//ns4:ApplicationStatus", xdocument.Root.CreateNavigator()).Value;
XNamespace ns4 = "urn:Allscripts:Hub:PatientMsg";
XDocument doc = XDocument.Load("yourFileName.xml");
string applicationStatusValue = doc.Root.Element("MessageContent")
.Element(ns4 + "MessageProcessed")
.Element(ns4 + "ApplicationStatus")
.Value;
精彩评论