2011-11-16 125 views
7

我正在使用移動應用程序,並且必須讀取xml提要並解析信息。在那裏它有一個特殊的標籤,因爲這個<dc:creator> Jonethon Owens </dc:creator>在標籤中使用冒號(:)時的XML語法

在C#中我使用LINQ to XML,不知道如何正確處理這種類型的標籤來解析和獲取信息。

如果有人能解釋如何做到這一點,真的很感激。在此先感謝

+0

查看'dc'是否已被聲明爲xml頂部的命名空間。 – Kangkan

+0

在xml文檔的頂部,它表示xmlns:dc =「http://purl.org/dc/elements/1.1/」 – JibW

+0

所以你從FailedDev得到了答案(不是失敗)! – Kangkan

回答

10

您需要命名空間前綴。

XNamespace dc = "http://purl.org/dc/elements/1.1/"; 


var query = from lst in XElement.Load(@"foo.xml").Elements(dc +"creator") 

      select ... 
+0

感謝FailedDev,我收到一個異常「空對象」。可能是我給了XNamespace dc =「purl.org/dc/elements/1.1/」。因爲在XML文件的頂部,它表示xmlns:dc =「purl.org/dc/elements/1.1/」。它是否應該分配給XNamespace dc。 – JibW

+0

@JibW不,這是你的名字空間。您正在通過其他一些代碼獲得例外,這些代碼並未顯示。 – FailedDev

+0

所有其他XML標籤都是正常的。他們沒有分號。所以當我評論[Creator =(string)result.Element(dc +「creator」)。Value]時,其他人工作正常。我給了XNamespace dc =「purl.org/dc/elements/1.1/」這樣。我不確定我分配給直流的值是否正確 – JibW