我想知道如何将XDocument的特定部分写入文件。
假设我在应用程序启动时加载整个文档,然后使用应用程序加载读取设置。当我修改我的类的属性时,我希望将JUST THAT PROPERTY(或者只是该属性及其子项)写回文件,保持对XDocument的任何其他修改(在内存中) < / p>
我当前的代码如下所示(注意我有一些围绕XDocument和XElement类的包装器):
public void SaveRecursiveData()
{
//Load the original file into a new document
XmlConfig tmp = new XmlConfig(_XmlDoc.Filename,false);
//find the node i am interested in
XElement currentElement = tmp.Xmldoc.XPathSelectElement(this.Path);
//Replace it with my IN MEMORY one
currentElement.ReplaceWith(_XmlNode);
//Write the whole temporary document back to the file
tmp.Save();
}
这是最好的方法还是有另一种方式?
答案 0 :(得分:-1)
你可以做到
currentElement.Attribute("toChange").Value = "mynewvalue";
而不是ReplaceWith