2012-10-15 304 views
0

我正在Visual Studio中創建一個.net網站。在哪裏放置texfile

該網站利用文本文件的讀寫,我的問題是放置我的文本文件的位置,訪問文件的物理路徑是什麼。

在項目中,我使用使用

var sr = new StreamReader(@"C:\Users\Vinu\Desktop\token.txt"); 

我想知道應該是什麼文件,而不是@"C:\Users\Vinu\Desktop\token.txt";

,這樣我可以訪問的路徑如下聲明 訪問文件使用IIS7發佈網站後的文件。

+1

你可以把文件放在任何地方。你也可以把它放在你的項目中的一個文件夾中。或者您可以繼續使用C目錄或任何其他目錄。如果你把這個文件放在你的項目中,然後用Server.MapPath訪問它,在其他情況下給出字符串的完整路徑。 –

回答

0

在解決方案中使用'App_Data'文件夾。

如果您確實想要將數據存儲在桌面上,請使用枚舉Environment.SpecialFolder來獲取動態路徑。例如

Environment.GetFolderPath(Environment.SpecialFolder.Desktop));

注:該Environment.SpecialFolder枚舉包含像我的文檔,PROGRAMFILES等其他地方,多看這裏:http://msdn.microsoft.com/en-us/library/system.environment.specialfolder.aspx

1

要回答你的問題,這取決於文件的體積,如果卷該文件是巨大的,你想把它放在一個單獨的文件服務器並訪問它。你會被放置在一個共享位置\\sharelocation和訪問否則你可以把它放在你的應用程序目錄本身與

Server.Mappath(".") 

,這將給你的根目錄的物理路徑訪問路徑,第一選擇把它放在共享位置,你可以在appsettings下的web.config中有一個變量,它會給你共享位置。

我不建議在App_Data中使用它的原因是因爲如果您在網絡負載平衡器中,您的app_data文件夾特定於您的Web應用程序的一個實例,我寧願將該文件放在共享位置並訪問它們。