我在 LinqPad 上尝试了这个简单的查询,并对为什么第二个查询有效但第一个查询没有改变列表(descen)感到头疼。
- 我如何使它工作。我使用此代码克隆和修改 xml 属性、值
失败
var doc = XElement.Parse("<Root><Descendants>Welcome</Descendants><Descendants>Stack</Descendants><Descendants>Overflow</Descendants></Root>");
var descen = (from des in doc.Descendants("Descendants") select new XElement(des));
foreach (var desc in descen)
{
desc.Value += DateTime.UtcNow;
}
descen.Dump();
doc.Dump();
作品
var doc = XElement.Parse("<Root><Descendants>Welcome</Descendants><Descendants>Stack</Descendants><Descendants>Overflow</Descendants></Root>");
var descen = (from des in doc.Descendants("Descendants") select new XElement(des));
foreach (var desc in doc.Descendants("Descendants"))
{
desc.Value += DateTime.UtcNow;
}
descen.Dump();
doc.Dump();
摊位是我的电脑??WTH
var doc = XElement.Parse("<Root><Descendants>Welcome</Descendants><Descendants>Stack</Descendants><Descendants>Overflow</Descendants></Root>");
var descen = (from des in doc.Descendants("Descendants") select des);
foreach (var desc in descen)
{
desc.Value += DateTime.UtcNow;
}
var instance = from t in descen select new XElement(t);
doc.Elements("Descendants").LastOrDefault().AddAfterSelf(instance);
descen.Dump();