Итак, у меня есть проблема в моем приложении ASP.NET MVC, оно не хочет сохранять файл xml после его публикации. У меня есть форма, которую я отправляю в контроллер с помощью ajax, а затем использую эти данные для создания файла xml, который затем хочу сохранить.
Я использую следующий код для создания моего XML-файла и его сохранения:
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(rawXml);
StreamWriter path = new StreamWriter(Server.MapPath("/"+ fileName + ".xml"));
xmlDoc.Save(path);
Если я запускаю свое приложение в режиме отладки, оно записывает файл в ~/MySolution/MyProject/MyFile
, нет проблем.
Поэтому, когда я публикую приложение на сервере IIS 7 на своем компьютере и загружаю приложение через localhost/MyApp
, я ожидаю, что оно запишет файл в C:\inetpub\wwwroot\MyApp\MyFile
, но этого не происходит.
Я включил разрешения для папки inetpub
и всех последующих папок для NETWORK SERVICE
. Но сообщение AJAX продолжает возвращаться с ошибкой, и файл не появляется в папке, поэтому я предполагаю, что он не позволяет записать файл по указанному пути или путь неверен, так или иначе, я не знаю, как проверить что пошло не так.
Как заставить опубликованное приложение записать файл xml в путь C:\inetpub\wwwroot\MyApp\MyFile
?
System.IO.File
для сохранения файла на диск? Зачем использоватьXmlDocument
, если все, что вы хотите сделать, это сохранить файл на диск, а не манипулировать или анализировать XML? - person mason   schedule 11.09.2016