2011-11-16 53 views
7

私はモバイルアプリケーションで作業しており、XMLフィードを読み取り、その情報を解析する必要があります。このような特別なタグがあります<dc:creator> Jonethon Owens </dc:creator>タグでコロン(:)を使用する場合のXML構文

私はLINQ to XMLを使用しており、このタイプのタグを正確に処理して情報を取得する方法はわかりません。

誰かがこれを達成する方法を説明できる場合は、本当に感謝します。ありがとうございます。

+0

「dc」がxmlの先頭の名前空間として宣言されているかどうかを確認してください。 – Kangkan

+0

xmlns:dc = "http://purl.org/dc/elements/1.1/" xmlドキュメントの上部にある – 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、私は例外 "nullオブジェクト"を取得しています。私は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")という値をコメントするときにうまくいく。私はXNamespace dc = "purl.org/dc/elements/1.1/"としました。 DCに割り当てられた値が正しいことがわかりません – JibW

関連する問題