2013-07-31 13 views
2

我收到了一個小公司的網站,用於檢查哪個商店可以找到品牌。 該網站使用c#代碼來檢查子文件夾中的.txt文件。 它工作的很好,雖然我在我的電腦上使用了一個像「C:\ brands」這樣的路徑,但現在我嘗試託管主頁,因此我將路徑更改爲「〜/ App_Data/Brands/Normal」+ StoreNames()[i] + 「。文本」。 但現在我無法訪問.txt文件了。 txt文件位於root/App_Data/Brands/Normal中,但代碼位於root/App_Code中。這可能是一個問題嗎?對Webmatrix的.txt沒有訪問權限ASP.NET

此外我試圖訪問沒有任何特殊權限或帳戶的文件。 主人是https://panel.sitecloud.cytanium.com/

我需要什麼才能再次訪問文件? 這可能是一個問題,我的代碼太多,因爲它沒有在本地主機上任何工作(在那裏與一個外部文件夾的工作)..

編輯:

好吧,在MapPath做的工作!我只是忘了在MapPath增加也 如果(File.Exists(HttpContext.Current.Server.MapPath(sFilename)))..

+0

燦你顯示顯示輸出的頁面?它看起來像你試圖訪問你的瀏覽器中的App_Code或App_Data。 – dpp

+0

你如何試圖訪問瀏覽器中的數據?出於安全目的,您可以更改域名。 – dpp

+0

我添加了Default.cshtml代碼,並將鏈接添加到您的awnser下的註釋中的主頁。 現在得走了,但我會再檢查一次。 非常感謝你的幫助! :-) 我需要它爲我的應用程序明天..: -/ – Superwayne

回答

0

嘗試使用HttpContext.Current.Server.MapPath獲得的物理目錄:

string data = File.ReadAllText(HttpContext.Current.Server.MapPath("~/App_Data/TextFile.txt")); 
+0

我添加了讀取文件的部分.. 我該如何改變它以使用MapPath?當我嘗試像sContent = File.ReadAllText(Server.MapPath(sFilename));;(在這種情況下,它表示名稱「服務器」不存在.. – Superwayne

+0

好吧,在其他問題中找到它。現在我使用HttpContext.Current.Server.MapPath與「使用System.Web」 它似乎工作(沒有錯誤發生在運行時),但我仍然無法訪問文件... – Superwayne

+0

對不起,我忘了你'重新在你的App_Code中使用.cs我會更新我的答案 – dpp