LINQ to XML을 사용하면 네임스페이스 선언이 포함된 XML을 구문 분석하는 것이 어려울 수 있습니다.
다음 XML 코드를 고려하세요.
<code class="language-xml"><Response xmlns="http://myvalue.com"><Result xmlns:a="http://schemas.datacontract.org/2004/07/My.Namespace" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><a:TheBool>true</a:TheBool><a:TheId>1</a:TheId></Result></Response></code>
이 XML을 구문 분석하려면 다음 코드를 사용할 수 있습니다.
<code class="language-csharp">XDocument xmlElements = XDocument.Parse(theXml); XNamespace ns = "http://myvalue.com"; XNamespace nsa = "http://schemas.datacontract.org/2004/07/My.Namespace"; var elements = from data in xmlElements.Descendants(ns + "Result") select new { TheBool = (bool)data.Element(nsa + "TheBool"), TheId = (int)data.Element(nsa + "TheId"), };</code>
Descendants
내에서 ns
를 사용하고 Elements
내에서 nsa
를 사용하는 것에 유의하세요. 이러한 네임스페이스를 사용하면 LINQ to XML 메서드가 올바른 요소를 식별할 수 있습니다.
위 내용은 LINQ to XML을 사용하여 네임스페이스로 XML을 효과적으로 구문 분석하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!