2013-04-23 82 views
1

使用C#嘗試將文件保存到iis「temp」文件夾路徑時,它在本地工作,但是我發佈應用程序並從另一臺計算機訪問它,它使用完整路徑(C:/ ....)並不能找到它作爲它尋找本地目錄,我該如何解決這個問題?從asp.net訪問iis文件夾中的文件

(Server.MapPath("~/TEMP/") + filename); // code to savefile 

感謝

+0

可能存儲了web.config中temp臨時上傳文件夾位置的位置Appsettings – 2013-04-23 23:43:11

回答

3

以及一個不錯的改進,你可以做的是:

1)appSetting添加到您的應用程序的web配置的絕對路徑,像:\\MachineName\ShareName

2)創建MachineName上的ShareName網絡共享(這可能是您發佈應用程序或其他服務器的服務器,可以根據您的需要)

3)允許IIS用戶或應用程序池的標識用戶在讀寫訪問共享:\\MachineName\ShareName

4)修改上面的代碼做這樣的事情:

Path.Combine(sharePath, filename); 

其中sharePath是一個字符串,初始值爲web.config的appSetting中的值,使用ConfigurationManager.AppSetting["settingName"]

+0

1+ for Path.Combine – 2013-04-24 00:03:24