用c#测试xml节点

时间:2014-05-20 10:41:50

标签: c# xml

我遇到问题,检查是否存在具有某些属性的元素。我会解释..我有以下代码

XDocument xDocument = XDocument.Parse(member.getProperty(itemlist).Value.ToString());
xDocument.Root.Add(new XElement(
    "Item",
    new XAttribute("Text", texts),
    new XAttribute("Value", values)));
member.getProperty(itemlist).Value = xDocument.ToString();
member.Save();

我需要你们理解的就是这么简单 - 我将一些东西转换成我的XDocument(女巫是一个xml),我简单地在其上添加了一些带有一些属性的新项目。但现在有我的问题。我想这样做:如果具有该属性的项目存在 DELETE ,如果不是 ADD 。我该怎么做这个测试?无论如何,谢谢。

1 个答案:

答案 0 :(得分:2)

你的意思是这样的:

var existingItem = 
        xDocument.Root
                 .Elements("Item")
                 .FirstOrDefault(o => 
                                      (string)o.Attribute("Text") == texts 
                                        && 
                                      (string)o.Attribute("Value") == values
                                 );
if(existingItem != null)
{
    //DELETE !!!
}
else
{
    //ADD !!!
}