Xpath でサポートされているすべてのノード タイプをプルしますか? 私が電話したときのようです
selectNodes("@")
属性を含む要素を返すだけですが、属性自体のリストを取得したいと考えています。言い換えれば、結果のノード コレクションには Attr 型のノードのみが含まれることが期待されますが、それはうまくいかないようです。
Xpath でサポートされているすべてのノード タイプをプルしますか? 私が電話したときのようです
selectNodes("@")
属性を含む要素を返すだけですが、属性自体のリストを取得したいと考えています。言い換えれば、結果のノード コレクションには Attr 型のノードのみが含まれることが期待されますが、それはうまくいかないようです。
foreach(XmlAttribute att in selectNodes(" * /@ * ")) ...
コンテキスト ノードの属性を選択するための正しい XPath 構文は次のとおりです。
@*
または
attribute::*
ただし、属性を持つのは要素だけであることに注意してください。したがって、コンテキスト ノードがドキュメント ルートの場合は、もちろん何も選択しません。
ドキュメントのすべての属性が必要な場合は、次を使用します。
//@*
これは次のように拡張されます。
/descendant-or-self::node()/attribute::*
ドキュメントから:
XPath 式に一致するノードのリストを選択します。
(ノードの) Attributes プロパティ
このノードの属性を含む XmlAttributeCollection を取得します。
http://msdn.microsoft.com/en-us/library/system.xml.xmlnode.attributes.aspx
ドキュメント内のすべての属性を取得するには (それがあなたがやろうとしていることだと思いますか?)
selectNodes("@*")