【发布时间】:2015-03-20 03:44:49
【问题描述】:
给定这个 xml 文件
<root>
<event id="123">
<option subID="1">English</option>
<option subID="2">German</option>
<option subID="3">French</option>
<option subID="4">Spanish</option>
</event>
</root>
如何将西班牙语的值更改为日语?
我有这个 linq 查询:
var nodeToEdit = xml.Descendants("event").Where(x => (string)x.Attribute("subID") == "4");
在用这个查询做了一些事情之后,我用这个来改变值:
foreach(var item in nodeToEdit.Elements())
{
var query = item.Descendants("option").Where(z => (string)z.Attribute("subID").Value == "4");
foreach (var bla in query)
{
bla.Value = "Japanese"; // bla.Value = Spanish
}
}
但是当我调试时,我可以看到我的query 没有结果。
【问题讨论】:
-
您确定您的 XML 不使用命名空间?
-
<event>没有subID属性:var nodeToEdit = xml.Descendants("event").Where(x => (string)x.Attribute("subID") == "4");