如何在 XDocument 对象中获取属性

Posted

技术标签:

【中文标题】如何在 XDocument 对象中获取属性【英文标题】:How to get attribute in the XDocument object 【发布时间】:2010-12-13 14:39:38 【问题描述】:

我有这个 xml

<config>
    <audio first="true" second="false" third="true" />
</config>

我希望我的代码能够做这样的事情

if (xdoc.getAttr("first")=="true")
    Console.Write("first is true");

如何使用 LINQ XDocument 执行此操作? 到目前为止,我所拥有的是加载了该 xml 字符串的 XDocument 对象。

【问题讨论】:

我会回答,但这将是多余的。您要执行的操作在 XElement 中。 @Slaks,我做了,但我找不到我要找的东西,@legatou 我会看看 XElement。 【参考方案1】:

需要获取&lt;audio&gt;元素的属性:

string value = xdoc.Root.Element("audio").Attribute("first").Value;

【讨论】:

这个不错。我添加了 Convert.toBoolean(value);将其转换为布尔值【参考方案2】:

你应该看看 XElement

article at c-sharpcorner.com

【讨论】:

以上是关于如何在 XDocument 对象中获取属性的主要内容,如果未能解决你的问题,请参考以下文章

如何只搜索 XDocument 的子项,而不是其所有后代?

如何从 XDocument 获取 XML 节点

当我们有多个同名但属性不同的元素时,如何使用 Xdocument 从 xml 中删除一个元素

如何从 XDocument 获取子节点的值

如何在构建 XDocument 时执行 LINQ 查询?

当元素的名称中有冒号时,如何使用 LINQ 查询 XDocument?