c# - c#LINQ如何确定具有特定属性的XElement
问题描述
我想实现此功能:确定 XML 文件是否具有具有特定属性的 XElement。这是示例 XML 代码:
<root>
<pou objectId="name">
</pou>
<pou objectId="value">
</pou>
<pou objectId="address">
</pou>
</root>
我想确定 XML 文件是否具有特定的 XElement“pou”,其属性 ObjectId“name”。
以下是我在 C# 中使用后代的代码
XDocument xdoc = XDocument.Load(@"C:\Users\jsc\Desktop\TestForInherit.xml");
XDocument xNew = new XDocument();
xNew.Add(new XElement("root"));
if (xdoc.Descendants("pou").Where(x=> (string)x.Attribute("objectId") =="name").Any()==true)
{
xNew.Add(new XElement("pou", new XAttribute("objectId", "name")));
}
xNew.Save(@"C:\Users\jsc\Desktop\TestForInheritNew.xml");
如果 xml 文件具有具有特定属性值的 XElement,则将 XElement 添加到新的 XML 文件中。
但不幸的是它不起作用。谁能给我一些建议。
解决方案
请尝试以下语法以检查是否存在具有特定名称的属性:
xdoc.Descendants("pou").Where(x=> x.Attribute("objectId") != null)
推荐阅读
- flutter - Sqflite颤振与主隔离通信
- r - 在 R 中用数百万行数据估算 NA
- java - 编写 Java 辅助方法
- node.js - 无法使用“npm test”运行测试
- r - 更改轴上的日期刻度的问题 - ggplot
- f# - 此平台不支持 ReflectionOnly 加载。安装 RProvider 后 VSC 上的 F# Compiler(3053)
- python - 可以在不启动/停止服务器、调用 os.kill 或使用命令行的情况下关闭 Flask 应用程序吗?
- python - 如何重新排列这个多索引熊猫数据框的行顺序?
- java - Java 概率(基于百分比)3 个选择
- html - 浏览器屏幕的宽度或高度是否可用于确定标签不透明度 (css) 的过渡或动画?如果有怎么办?