2011-05-30 114 views
2

我需要從多個xml文件中檢索元數據。 xml文件的結構如下:從xml文件中檢索元數據

<songs> 
<song_title> some title </song_title> 
<classification> some classification </classification> 
<song_text> some text </song_text> 
<singer> 
    <sing> singer's name </sing> 
    <gender> gender </gender> 
    <bornYear> year </bornYear> 
    <livePlace> live place </livePlace> 
    <liveArea> live area </liveArea> 
    </singer> 
</songs> 

用戶選擇搜索條件 - 現場或現場區域。然後他輸入他搜索的地點或地區的名稱。我需要找到並顯示歌曲的鏈接,歌曲的元數據中包含用戶輸入的地點或區域。我使用.NET 3.5

回答

1

這個答案更是一個指針......

您可以使用LINQ to XML來完成這個任務。

什麼是LINQ to XML?

的LINQ to XML是一個支持LINQ的, 內存XML編程接口 ,使您能夠以XML從 的.NET Framework編程語言 內工作。

LINQ to XML就像文檔 對象模型(DOM),它將 XML文檔帶入內存。您可以在 查詢和修改文件,並 修改後,您可以將其保存到 一個文件或序列化它並通過互聯網發送它 。然而,LINQ到 XML從DOM不同:它提供了一個 新的對象模型,它是輕 的重量和更容易使用,並 這需要語言的優勢 改進在Visual C#2008

你可以然後搜索並使用類似於下面的示例LINQ查詢表達式操作任何XML文檔元素:

IEnumerable<XElement> partNos = 
from item in purchaseOrder.Descendants("Item") 
where (int) item.Element("Quantity") * 
    (decimal) item.Element("USPrice") > 100 
orderby (string)item.Element("PartNumber") 
select item;