【发布时间】:2016-08-03 02:39:07
【问题描述】:
<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=>)更新状态
如何在原始XDocument 实例中更新/合并修改后的IEnumerable<XElement> 并在XML 源文件中保存更改。
【问题讨论】:
-
那么问题来了,如何更新
status元素并保存文档? -
是的,更新了我的问题格式,
标签: c# xml linq linq-to-xml ienumerable