邊學邊用LINQ 一

2021-05-28 16:30:48 字數 1964 閱讀 4316

原來用xpath來建立和遍歷xml,現在發現用linq更加方便,故記下相關用法。

linq建立xml樹(c#)

xelement employees =   

new xelement("employees",       

new xelement("employee",           

new xelement("name","partrick"),           

new xelement("phone","206-555-0144",                

new xattribute("type","home")),           

new xelement("phone","425-555-0145",               

new xattribute("type","work")),           

new xelement("address",               

new xelement("street1","123 main st"),               

new xelement("city","mercer island"),               

new xelement("state","wa"),               

new xelement("postal","68042")           

)       

)   

);產生乙個eemployee.xml檔案如下:

partrick

man206-555-0144

425-555-0145

123 main st

mercer island

68042

通過linq查詢相關資料

1)查詢乙個姓名為「partrick」的人性別

ienumerable_*** =

from _elem in employees.descendants("employee")

select  (string) _elem.arrribute("***");

_***.first(); --此句就可以得到***屬性的值 man

descendants(xname)按文件順序返回此文件或元素的經過篩選的子代元素集合。

集合中只包括具有匹配 xname的元素。

此句也可以這樣寫

ienumerable_*** =

from _elem in employees.elements("employee")

select  (string) _elem.arrribute("***");

2)如果要找乙個work型別的**

ienumerableitems =

from _elem in employees.elements("phone")

where _elem.attribute("type").value=="work"

select (string) item;

另一種寫法:

ienumerableitems =

from _elem in employees.elements("phone")

select (string) item;

foreach(xelement _node in items)

}下面一種迴圈寫法,用處較多

還有setelementvalue可以修改節點中的資料 setelementvalue(節點名,資料);

這些是基本方法,如要進一步深入研究,可以檢視msdn

邊學邊用LINUX

第一講 linux概述 第二講 linux的安裝過程 一 第三講 linux的安裝過程 二 第四講 linux的安裝過程 三 第五講 linux的安裝過程 四 第六講 x windows系統 第七講 kde的基本操作 第八講 linux作業系統中的中文環境 第九講 linux作業系統中的其它應用程式...

Python邊學邊用

由於要對10x10的節點設定靜態路由,如果手動寫真的太費事了。考慮使用程式設計實現。由於一直想學python,就藉機邊學邊用吧 python 是一種物件導向 直譯式計算機程式語言。它包含了一組完善而且容易理解的標準庫,能夠輕鬆完成很多常見的任務。它的語法簡捷和清晰,盡量使用無異義的英語單詞,與其它大...

HTML 邊用邊學

1.html的標籤,宣告必須是文件的第一行,位於之前 宣告不是標籤,它是指示web瀏覽器關於頁面使用哪個html版本進行編寫的指令。在html4.01中,宣告引用dtd,因為html4.01是基於sgml。dtd規定了標記語言的規則,這樣瀏覽器才能正確的呈現內容。html5不是基於sgml,所以不需...