<OTPC>
<OTPCDATA>
<PROGRAM>LOT676-Q1T2-24 RevB @MC1 PVDB Version 3.8</PROGRAM>
<TOTAL_QTY>54123</TOTAL_QTY>
<PASS_QTY>60866</PASS_QTY>
<FAIL_QTY>3257</FAIL_QTY>
<FILE_DATE>7/29/2016 10:05:47 AM</FILE_DATE>
<FILE_TIME>10:05:47</FILE_TIME>
<STATUS>0</STATUS>
</OTPCDATA>
....So On---
</OTPC>
以上是XML
我需要修改并保存源文档中的更改。可能还有Status=1
。我正在过滤XDocument
,如下所示。
XDocument unreadOTPC = XDocument.Load(pathToRead);
var filteredOTPC = unreadOTPC.Element("OTPC")
.Descendants("OTPCDATA")
.Where(x => x.Element("STATUS").Value == "0");
它返回IEnumerable<XElement>
。我正在使用filteredOTPC.ForEach(s=>)
如何在原始IEnumerable<XElement>
实例中更新/合并修改后的XDocument
,并在XML
源文件中保存更改。
答案 0 :(得分:2)
&#34; IEnumerable与unreadOTPC分离&#34; 引起一些混乱,如果我正确理解问题,则需要更新{{1}中的promise.catch(function(err) {
done(err.message !== 'No reason.' ? new Error('Failed') : undefined); // => Never reached.
});
值并保存文档。
所以,你可以这样做。
STATUS
现在您可以使用任何循环逻辑更新元素。
Xml
选中此Demo