如何在尝试添加元素之前检查某个元素是否存在?
背景:我有一个XDocument
X
,其中包含一个子元素Flowers
,后面包含一系列元素,每个元素都被命名为{{1} }}。每个Flower
已经有2个子元素,我想添加一个名为Flower
的第3个元素。但是,我想检查并确保Price
元素中没有Price
的元素。我怎么做?我甚至需要检查吗?
答案 0 :(得分:5)
XElement
有一个HasElements
属性,只要想知道是否存在任何元素就可以使用。
对于你的情况,我会用......
XNamespace ns = "http://mynamespace.com";
bool hasPrice = flowerElement.Element(ns + "Price") == null;
..查看价格元素是否存在。如果没有,您可以添加它。
注意:如果您没有为XML文件设置任何命名空间,则可以使用Namespace.None
代替ns
。