我有一個MVC應用程序,用戶可以在其中上傳文件。在我編寫上傳的文件之前,我根據日期時間創建了一個目錄。我從C:\ ApplicationName開始,並在上傳完成時(理論上)以C:\ ApplicationName \ 20111001 \ Filename.ext結尾。C#MVC嘗試寫入文件時訪問路徑被拒絕
我的本地Windows 7機器上的問題是我無法寫入文件。無論哪個用戶我完全訪問該目錄,我都會收到「拒絕訪問」異常。奇怪的是日期目錄被創建得很好。
我已經給出了以下用戶完全訪問:
- [當前登錄的用戶]
- NETWORK SERVICE
- IUSR
- IIS_IUSRS
- 客人
- 大家
沒有任何成功。我真的不明白這裏發生了什麼。當我給每個人完全訪問權限時,我應該能夠創建一個文件嗎? PS:我直接使用Visual Studio 2010和ASP.NET開發服務器。
我認爲你使用MVC的事實不是問題的一部分。不確定(我對MS Web服務器權限瞭解不多),但您可能還需要設置應用程序的信任級別。當您部署到IIS時,您需要檢查您的應用程序池以查看您的代碼運行的是哪個用戶。 –
發佈寫入文件的代碼行,文件名的確切值(首先嚐試使用@「C:\ ApplicationName \ 20111001 \ Filename.ext」的合併值)和異常信息。否則應該工作,因爲你可以創建文件夾。 –
我已經完成了你所說的: System.IO.File.WriteAllBytes(@「C:\ ApplicationName \ 20111001 \ Filename.ext」,new byte [1] {0}); 但仍然得到異常,「訪問路徑'C:\ ApplicationName \ 20111001'被拒絕」 – TheGuest