新聞中心
學(xué)習(xí)LINQ to XML時,經(jīng)常會遇到LINQ to XML操作問題,這里將介紹LINQ to XML操作問題的解決方法。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:空間域名、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、淮北網(wǎng)站維護、網(wǎng)站推廣。
LINQ to XML操作
- XElement xelem = XElement.Load(@"example.xml");
- // 查詢節(jié)點名為Item,并返回它們的PartNumber屬性值的集合
- IEnumerable
partNos = from item in xelem.Descendants("Item") - Select (string)item.Attribute("PartNumber");
- foreach (string str in partNos)
- Console.WriteLine(str);
在.NET3.5中,框架對LINQ to XML操作進行了擴展,這個擴展就是LINQ to XML。在名稱空間System.Xml.LINQ下。從以上的代碼我們可以看到增加了一個新的XElement對象。我們通過XElement.Load方法來裝載XML文檔,而不是傳統(tǒng)的DOM模式XmlDocument.Load。
相比較于W3C的DOM文檔結(jié)構(gòu)來說,LINQ to XML為我們提供了一種更方便的創(chuàng)建一個XML文檔的方式。
- XElement contacts =
- new XElement("Contacts",
- new XElement("Name", "Ice Lee"),
- new XElement("Phone", "010-876546",
- new XAttribute("Type", "Home")),
- new XElement("Phone", "425-23456",
- new XAttribute("Type", "Work")),
- new XElement("Address",
- new XElement("Street", "ZhiXinCun"),
- new XElement("City", "Beijin")
- )
- );
- //輸出結(jié)果:
- Xml version="1.0" encoding="utf-8"?>
Ice Lee Type="Home">010-876546 Type="Work">425-23456 ZhiXinCun Beijing
LINQ to XML提供了為豐富并且簡潔的類來實現(xiàn)對XML的操作。相對于種類繁多的DOM模型的XML類庫而言,LINQ的類使我們的學(xué)習(xí)曲線變得平滑并且還能達到相同的效果。LINQ to XML解決了DOM模型中的幾個比較不方便的問題,如修改節(jié)點名字的問題;同時也拋棄了一些看起來很強大但是很不常用的東西,如實體和實體引用。這樣使得LINQ to XML操作速度更快并且更方便。以下的幾個例子將展示給大家LINQ to XML如何完成節(jié)點名稱修改,增加和刪除的效果。
首先,我們看一下添加一個節(jié)點到XML中是這么樣實現(xiàn)的:
- XElement xelem = XElement.Load(@"example.xml");
- XElement newnewXelem = new XElement("NewNode", "This is new node");
- xelem.Add(newXelem);
當(dāng)前題目:LINQtoXML操作剖析
新聞來源:http://fisionsoft.com.cn/article/djccocg.html


咨詢
建站咨詢
