Как изменить, загрузив и сохранив тот же файл XML

У меня проблема с изменением файла XML, когда я сначала загружаю, а затем сохраняю его с тем же путем и именем файла. Ниже мой код. Ошибка: "Доступ к пути C:\MyApp\Web.config запрещен. Если я изменю путь к xdoc.Save, чтобы он отличался от xdoc.Load, то все будет в порядке. Какова ваша рекомендация для решения этой проблемы? проблема? Если возможно, мне нужно изменить существующий 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");

Заранее спасибо.

1 ответ

Решение

Я ожидаю, что это будет хорошо, если у вас есть доступ для записи в web.config для начала, и если ничто иное не использует его. (Это было, конечно, хорошо в тесте, который я только что выполнил.) Я подозреваю, что более вероятно, что другой процесс уже использует файл (или тот же процесс, но какой-то другой код внутри него), или что у вас просто нет доступа на запись в файл.

Другие вопросы по тегам