2016-07-18 6 views
-1

いくつかのデータを含むxmlがありますが、いくつかの情報を抽出したいのですが、どうやってそれを把握することはできません。私がダウンして、以下の例を掲載します。それに基づいて2つの異なるxmlタグから同じ属性を読み取る

<ns:Taggg ns:SelectThisValues="3421" xmlns:ns="namespaceURL">3421<ns:AnotherTaggg ns:SomeValue="3421" /> 
</ns:Taggg> 

    <ns:Taggg2 ns:SelectThisValues="3422" xmlns:ns="namespaceURL">3422<ns:AnotherTaggg ns:SomeValue="3421" /> 
</ns:Taggg2> 

、私は一つだけの操作で、「SelectThisValues」属性から、両方のタグから値を選択します。

名前空間はこの例ではnsとして定義されています。

私はxmlの経験はあまりありませんが、それが可能であることはわかっています。ちょうど、それをどうやってやるのか正確には分かりません。誰か助けてくれますか?どんなアイデアも歓迎です!

私は唯一の基本的な考え方を必要としない、私は複雑なアイデア

+1

XML? – rene

+1

あなたの現在の試みはどこですか? 「一度の操作で値を選択する」とはどういう意味ですか - 期待される戻り値/タイプは何ですか? –

+0

@CharlesMagerあなたが下の投票ボタンを押すと、あなたはあなたの心を変えてくれることを願っています。なぜそれを尋ねますか?明らかではない?文字列としての3421、私はちょうどその値を必要とします – dpaul

答えて

1

で処理することができますあなたはXMLにLINQでかなり自明これを行うことができます。

あなたはそれをロードするために、今使用しないクラス
XNamespace ns = "namespaceURL"; 

var doc = XDocument.Parse(xmlString); 

var values = doc.Descendants() 
    .Attributes(ns + "SelectThisValues") 
    .Select(x => x.Value); 
+0

興味深いですが、何らかの理由で、私は値を取得しません – dpaul

+0

[これはあなたの例で動作します](https://dotnetfiddle.net/dMMmz4) 。それがうまくいかないことを示す[mcve]がなければ、あなたが間違っていることを本当に示唆することはできません。 –

+0

ええ、おそらくどこかで私の間違いです。ご協力いただきありがとうございます。私は感謝します! – dpaul

関連する問題