Следующий совет не является ответом на оригинальный вопрос этой темы, но может помочь некоторым другим пользователям, попавшим на эту веб-страницу, после совершения той же глупой ошибки, которую я только что сделал ...
Я пытался получить элемент управления ASP.Net FileUpload для загрузки его файла на сетевой адрес, который содержал « скрытый общий ресурс », а именно:
\ MyNetworkServer\ c $ \ SomeDirectoryOrOther
Я не понял этого.Если бы я запускал веб-страницу в режиме отладки в Visual Studio, она бы работала нормально.Но когда проект был развернут и запущен через пользователя пула приложений, он отказался найти этот сетевой каталог.
Я проверил, под каким пользователем работает мой сайт IIS, дал этому пользователю полные разрешения для этого каталога.на сервере " MyNetworkServer " и т. д., но ничего не помогло.
Причина (конечно!) в том, что только администраторы могут "видеть" эти скрытые общие папки.
Моим решением было просто создать «нормальный» общий ресурс для
\ MyNetworkServer \ SomeDirectoryOrOther
, и это избавило от «Доступа кпуть ... запрещен "ошибка.FileUpload смог успешно выполнить команду
fileUpload.SaveAs(networkFilename);
Надеюсь, что это поможет некоторым другим пользователям, которые совершают ту же ошибку, что и я!
Обратите внимание, что если вы загружаете большие файлы (более4Mb), то IIS7 требует, чтобы вы изменили файл web.config в двух местах.Нажмите на эту ссылку, чтобы прочитать, что вам нужно сделать: Загрузка больших файлов в ASP.Net