首頁 > 後端開發 > C++ > 如何使用 LINQ to XML 有效地解析具有命名空間的 XML?

如何使用 LINQ to XML 有效地解析具有命名空間的 XML?

Barbara Streisand
發布: 2025-01-19 02:09:09
原創
875 人瀏覽過

How Can I Effectively Parse XML with Namespaces Using LINQ to XML?

使用 LINQ to XML 解析包含命名空間宣告的 XML

使用 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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板