我有一个xml文件,如下所示,
<configuration>
<property>
<name>name</name>
<value>dinesh</value>
</property>
<property>
<name>city</name>
<value>Delhi</value>
</property>
</configuration>
我的要求是我需要在运行时根据属性的名称以编程方式注释/取消注释属性,如下所示;
<configuration>
<!-- <property>
<name>name</name>
<value>dinesh</value>
</property> -->
<property>
<name>city</name>
<value>Delhi</value>
</property>
</configuration>
通过XDocument / XmlDocument遍历有没有直接的方法来实现这个目的?我刚从this问题
中查看了下面的代码XmlComment DirCom = doc.CreateComment(XmlElementName.OuterXml);
doc.InsertAfter(DirCom, XmlElementName);
doc.RemoveChild(XmlElementName)
上述代码使用方法是否正确?
答案 0 :(得分:1)
您可以使用SELECT EPC FROM track_record
GROUP
BY EPC
ORDER
BY DATEDIFF(MAX(datetime),MIN(datetime)) DESC
LIMIT 1;
+-----------------------------+
| EPC |
+-----------------------------+
| 03.0000A89.00016F.000169DCD |
+-----------------------------+
XDocument
哪个输出:
var xDocument = XDocument.Parse(@"<configuration>
<property>
<name>name</name>
<value>dinesh</value>
</property>
<property>
<name>city</name>
<value>Delhi</value>
</property>
</configuration>");
var firstPropertyElement = xDocument
.Descendants("property")
.First();//Find your element
var xComment = new XComment(firstPropertyElement.ToString());//Create comment
firstPropertyElement.ReplaceWith(xComment);//Replace the element with comment
Console.WriteLine(xDocument);