0

XML ドキュメントから特定のノードにアクセスしようとしています。これが基本名前空間であることに気付きました。これが例です。

ここに画像の説明を入力

すべての子孫ノード (エントリ) からノード d:MediaUrl の値を取得することに興味があります。そして、私はそれを達成していません。

変数反復子 'i' をデバッグすると、XML に次のようなデフォルトの名前空間が再び含まれていることがわかります。

<entry xmlns="http://schemas.microsoft.com.ado/..." 

また、「d」という別の名前空間を含める必要があります。

その特定のノードにアクセスするにはどうすればよいですか?

これは私が持っているものです。

        var doc = XDocument.Parse(result);

        string BASE_NS = "http://www.w3.org/2005/Atom";

        string d = "http://schemas.microsoft.com/ado/2007/08/dataservices";
        var query = from i in doc.Descendants(XName.Get("entry", BASE_NS))
                    select new Image()
        {
            Url = i.Element(XName.Get("MediaUrl", BASE_NS)).Value
        };

        var results = query.ToList();
4

2 に答える 2

0
var query = from i in doc.Descendants("{full namespace for prefix d}MediaUrl")
                    select new Image()
        {
            Url = i.Value
        };
于 2013-06-23T06:16:03.057 に答える