2013-10-19 121 views
4

我有一個帶有WCF Web角色的Azure雲服務。我試圖訪問App_Data內的文件,我不想硬編碼路徑。我已經嘗試使用:Azure雲服務上的服務網站的相對路徑

System.Web.HostingEnviroment.MapPath("~/App_Data/myfile");

以及開啓aspNetCompatibilityEnabled和使用Server.MapPath()

但兩種方式返回:

d:\ WINDOWS \ SYSTEM32 \ INETSRV \ App_Data文件\ myfile

該文件的實際位置是:

E:\ sitesroot \ 0 \ App_Data文件\ MYFILE

有什麼辦法我可以訪問的硬編碼路徑這個文件很短?

+0

借用[此線程] [1],請考慮使用LocalResources。 [1]:http://stackoverflow.com/questions/11687903/could-not-find-a-part-of-the-path-on-windows-azure –

+0

是啊,我知道這是不是正確的做事方式......但是我要求一個由其他人編寫的封閉的庫,並且它的寫法要求我使用常規的文件系統。我可能會回到他們並要求重寫這個組件。謝謝 – NSjonas

回答

0

部署後,天青雲服務會將應用程序部署到虛擬機。因此從具有相對路徑的任何子文件夾訪問文件不會改變。

您可以在不映射虛擬文件的情況下讀取文件。您可以加載文件路徑下傳遞的文件。 「/ App_Data/myfile」