<X version="1.0">
<Y id="abc" abv="a"/>
<Y id="edf" abv="e"/>
</X>
idが "abc"のノードを選択し、そのabv "a"を返したいとします。XmlNodeListでLINQを使用する
XmlDocument doc = new XmlDocument();
doc.Load(filePath);
XmlNodeList list = doc.SelectNodes("X/Y");
var node = list.Cast<XmlNode>().Where(node => node["id"].InnerText == "abc")
.Select(x=>x["abv"].InnerText);
しかし、ノード["id"]は動作しません。InnerTextは常に ""です。あなたはどこに問題があるかを指摘できますか?
どうもありがとう、あなたのコードスニペットが原因ではないユニークなnode
変数のコンパイルされないだろうかという事実は別に
まあ、あなたのXMLノードには内部テキストがありません。 'これは内部のテキスト 'です。私は正確なプロパティを忘れていましたが、 'node.Attributes [" id "]。Value ==" abc "'と 'Select(x => x.Attributes [" abv "] .Value)' –
Rob
Thx 、本当に役に立つ –