2014-03-05 55 views
0

我試圖使用的使用Server.Mappath代替基本上看起來像這樣不能使用使用Server.Mappath

CsvFile= @"D:\web\finalsa\en\csr\download_center\Click_Counter.csv"; 

在那裏我寫這條線位於文件的完整路徑:

D:\web\finalsa\en\include"; 

因此我試着寫這個沒有任何成功:

CsvFile= Server.MapPath("../csr/download_center/Click_Counter.csv"); 

誰能告訴我我做錯了什麼?在此先感謝

+0

怎麼了?返回的路徑是否與您期望的不同?拋出異常嗎?問題是什麼?另外,使用應用程序根相對路徑不是更好嗎,例如。 '〜/ EN/CSR/...'?這是什麼文件? ASPX? ASCX? ASMX? – Luaan

+0

@ArnaudAd你能描述一下你到底在做什麼嗎?在我使用控制器實用程序類的靜態方法之前,我遇到過類似的問題。事實證明,我不能在工具類中使用'Server.MapPath',所以我必須在控制器中執行它並傳遞一個字符串。我覺得也許你正在嘗試類似的東西,如果是這樣的話,只需在你的控制器中的路徑,並傳遞一個字符串參數。 – Leron

回答

0

NOONE可以,因爲你不告訴我們如何配置Web服務器。

你可以做的是地圖「。」並看看結果如何。這是當前目錄。可能你有一個問題,你認爲這是你想的其他地方 - 一分鐘的調試運行將幫助你發現你是對還是錯。

+2

這應該是一個評論 –

+0

@AmitJoki其實沒有,因爲它有解決方案。這樣的結論是「用當前的方式來獲取當前的路徑,然後相應地調整你的代碼,然後你就可以準確地知道問題了。顯然,在你的世界程序員中,阿米特不應該思考和使用一些工作,只需複製/粘貼現成的解決方案我爲你感到難過 – TomTom

+0

好吧,如果他在一個類中,而不是代碼背後,那麼他應該使用'HttpContext.Current.Server.MapPath()'。我認爲它是這樣的,好的,我將不會downvote任何一個! –