删除节点名为lily的节点
private static void LinqTodelete() { //创建Xml XDocument doc = new XDocument(new XElement("Data", new XElement("aaa", new XElement("name", "lily"), new XElement("age", "10")), new XElement("aaa", new XElement("name", "jak"), new XElement("age", "110")))); //为Xml之追加节点,并且设置属性 doc.Element("Data").Add( new XElement("name", new XAttribute("type", "11"), "asasas"), new XElement("age", "222")); Console.WriteLine("===========删除前============"); Console.WriteLine(doc.ToString()); //删除节点值为lily 的节点 var s1 = from s in doc.Element("Data").Elements("aaa") where s.Element("name").Value == "lily" select s; Console.WriteLine("===========删除后============"); s1.Remove(); doc.Add(s1); Console.WriteLine(doc.ToString()); Console.ReadLine(); }
运行结果
===========删除前============ <Data> <aaa> <name>lily</name> <age>10</age> </aaa> <aaa> <name>jak</name> <age>110</age> </aaa> <name type="11">asasas</name> <age>222</age> </Data> ===========删除后============ <Data> <aaa> <name>jak</name> <age>110</age> </aaa> <name type="11">asasas</name> <age>222</age> </Data>