.NET SelectNodes() 是否允许您选择属性?

发布于 2024-10-21 15:02:15 字数 140 浏览 5 评论 0原文

它是否提取 Xpath 支持的所有节点类型?似乎当我调用

selectNodes("@")

时,它只返回包含属性的元素,但我想获取属性本身的列表。换句话说,我希望生成的节点集合仅包含 Attr 类型的节点......但这似乎不起作用。

Does it pull all node types supported by Xpath? Seems that when I call

selectNodes("@")

it just returns the elements that contain the attributes, but I want to get the list of attributes themselves. In other words I would expect the resulting node collection to contain nodes of type Attr only...but that does not seem to work.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

单挑你×的.吻 2024-10-28 15:02:15

foreach(selectNodes 中的 XmlAttribute att("*/@*"))
...

foreach(XmlAttribute att in selectNodes("*/@*"))
...

故事未完 2024-10-28 15:02:15

来自文档:

选择匹配的节点列表
XPath 表达式。

而(节点的)Attributes 属性

获取 XmlAttributeCollection
包含 this 的属性
节点。

http://msdn.microsoft.com/en-us /library/system.xml.xmlnode.attributes.aspx

要获取文档中的所有属性(我认为这就是您想要做的?)您可能想尝试

selectNodes("@*")

From the Documentation:

Selects a list of nodes matching the
XPath expression.

While the Attributes property (of a Node)

Gets an XmlAttributeCollection
containing the attributes of this
node.

http://msdn.microsoft.com/en-us/library/system.xml.xmlnode.attributes.aspx

To get all attributes in a document (I think that's what you're trying to do?) you may want to try

selectNodes("@*")

在风中等你 2024-10-28 15:02:15

选择上下文节点的属性的正确 XPath 语法是:

@*

attribute::*

但请注意,只有元素可能具有属性。因此,如果上下文节点是文档根,那么您当然不会选择任何内容。

如果您想要文档中的所有属性,请使用:

//@*

这将扩展为:

/descendant-or-self::node()/attribute::*

The correct XPath syntax for selecting context node's attributes is:

@*

Or

attribute::*

But do note that only elements might have attributes. So, if the context node is the document root, you won't select anything, of course.

If you want all the attributes from a document, use:

//@*

That will be expanded to:

/descendant-or-self::node()/attribute::*
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文