如何通过加载和保存相同的XML文件

问题描述:

修改我有一个修改XML文件,当我第一次加载,然后用相同的文件路径和名称保存它的问题。以下是我的代码。错误是“访问路径C:\ MyApp \ Web.config被拒绝,如果我将xdoc.Save的路径更改为与xdoc.Load不同,那么它将会正常。请问您的建议是什么?问题?如果可能的话,我需要修改现有的XML文件(用于加载和保存意义的XML文件是相同的路径)。提前如何通过加载和保存相同的XML文件

XmlDocument xdoc = new XmlDocument(); 
xdoc.Load(@"C:\\MyApp\\Web.config"); 
XmlNode xn = xdoc.SelectSingleNode("//configuration/MyProvider");   
XmlElement el = (XmlElement)xn; 
el.SetAttribute("defaultProvider", "MyCustomValue"); 

xdoc.Save(@"C:\\MyApp\\Web.config"); 

感谢。

+0

你确定文件没有写保护吗? –

我希望这是罚款如果你有写访问web.config开始,如果没有别的东西正在使用它(这在我刚刚运行的测试当然很好)。我怀疑更有可能是另一个进程已经在使用该文件(或相同的亲但是其中的一些其他代码),或者你根本没有写文件的权限。

+0

谢谢你完全正确。不知何故web.config文件的权限有问题。我创建了一个新文件,现在它可以工作。谢谢。 –