在尝试添加某个元素之前,如何检查该元素是否存在于给定元素中?
背景:我有一个 XDocument
X
作为子元素包含 Flowers
随后包含一个系列每个元素都命名为 Flower
。每个 Flower
都有 2 个子元素,我想添加一个名为 Price
的第三个元素。但是,我想检查并确保 Flower
元素中还没有用于 Price
的元素。我怎么做?我什至需要检查吗?
最佳答案
XElement
有一个 HasElements
属性,如果只是想知道是否存在任何元素,它会起作用。
对于你的情况,我会使用...
XNamespace ns = "http://mynamespace.com";
bool hasPrice = flowerElement.Element(ns + "Price") == null;
..查看价格元素是否存在。如果没有,您可以添加它。
注意:如果您没有为您的 XML 文件设置任何命名空间,您可以使用 Namespace.None
而不是 ns
。
关于c# - 将新的 XElement 添加到现有的 XElement(如果它不存在),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2166740/