使用 Linq C# 检查 XML 节点是否具有属性?

2024-06-23

如何检查节点是否确实具有特定属性?我有一个包含几个节点的 XML 文件,如下所示:

<Field From="OldString" To="NewString" /> 

到目前为止,一切都很好。问题是这个结构即将更改为某些节点将如下所示:

<Field From="OldString" To="NewString" PrefixValue="OptionalAttribute" />

现在,当 PrefixValue 存在时,我应该将该属性中的值添加到字符串中,这并不是很困难,但是当我尝试查看 PrefixValue 属性是否存在时,我遇到了一些问题节点。在不存在 PrefixValue 的情况下,属性 PrefixValue 将根本不存在于节点中。我将如何检查该属性是否存在于 Linq 表达式中?


嗯,这取决于你想做什么。如果你想在投影中使用它,你可以使用:

(string) element.Attribute("PrefixValue")

如果缺少该属性,将返回 null,这很有用。

如果您希望将其放在 where 子句中,请使用类似以下内容的内容:

where element.Attribute("PrefixValue") != null
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Linq C# 检查 XML 节点是否具有属性? 的相关文章

随机推荐