Я искал интернет и не могу найти ответ на мой вопрос. Я также тщательно искал содержимое stackoverflow, что могло бы помочь мне задать более правильный вопрос.
Я сделал приложение с webservices в С#, которое работает в Silverlight. Моя проблема в том, что приложение должно создать каталог с относительным путем. Локально это работает, но когда я загружаю его на Microsoft Server, он не создает каталог.
В нем говорится следующее: операция с файлом не разрешена. Доступ к пути: 'c: /inetpub/wwwroot/...' отрицается.
Я использую эту строку кода для создания: Directory.CreateDirectory(System.Web.HttpContext.Current.Server.MapPath("TEMP/");
На карте, где работает приложение, я предоставил все права публичному пользователю и пользователю IIS. Но он по-прежнему дает ту же ошибку. Помимо этого, я также написал небольшую часть независимого кода в.Net для создания каталога. Это должно было проверить доступ, и это работает.
Поэтому я не знаю, где искать.
Я буквально удалил весь код и просто сохранил функцию создания каталога с помощью одной кнопки и одного обработчика событий: Directory.CreateDirectory("путь");
Я заметил, что относительный путь здесь не работает в Silverlight. (Кажется, он считает путь браузером (например, Chrome) как родительский, а не путь приложения).
Некоторые другие находки заключаются в том, что если я установлю абсолютный путь. Локально это работает, но когда я загружаю его на сервер, он снова говорит, что acces denied...
Любые советы очень приветствуются!
Я нашел решение проблемы!
Следующее пошло не так: приложение Silverlight состоит из двух частей. Веб-сервис и клиент;
Проблема с этим заключается в том, что пользователю DefaultAppPool не могут быть предоставлены права так же легко. Если вы пытаетесь предоставить права по умолчанию, в настройках карты пользователь DefaultAppPool не может быть найден.
Правильный способ предоставить права на DefaultAppPool - это перейти в консоль управления и ввести:
icacls c:\"Путь к карте"/грант "IIS APPPOOL\DefaultAppPool" :( F)
Для получения более подробной информации об этом, проверьте следующую ссылку: http://eufuckingreka.wordpress.com/2013/02/12/granting-defaultapppool-permissions-to-a-direction-on-windows-server-2008/