0

示例 XML 文件

<SiEventSchedule deleteStart="2012/01/21 00:00:00" deleteEnd="2012/01/21 23:59:59">
</SiEventSchedule>

代码:

var el = doc.Descendants(ns + "SiEventSchedule").Select(x => x.Attribute("deleteStart").Value).First();
string[] s = el.ToString().Split(' ');
s[0] = today.ToString("yyyy/MM/dd");
String s5 = String.Join(" ", s);
el.Replace(el, s5); // This line is not working

只有代码的最后一行不起作用,其他一切都在起作用。谁能建议如何更新这个值?

<SiEventSchedule deleteStart="2012/01/21 00:00:00" deleteEnd="2012/01/21 23:59:59">
</SiEventSchedule>
4

2 回答 2

0

那 ?

using System.Xml.Linq; 

XDocument xmlFile = XDocument.Load("books.xml");  

var query = from c in xmlFile.Elements("catalog").Elements("book")     
            select c;  

foreach (XElement book in query)  
{ 
   book.Attribute("attr1").Value = "MyNewValue"; 
} 

xmlFile.Save("books.xml");

我希望这有帮助

于 2012-07-26T08:11:23.413 回答
0

不太确定您要对选择做什么,但是如果您想更改属性的值,方法如下:

        XAttribute attr = doc.Descendants(ns + "SiEventSchedule").Select(x => x.Attribute("deleteStart")).First();
        attr.SetValue(attr.Value.Replace(oldValue, newValue));
于 2012-07-26T08:11:23.580 回答