Asp.net

IIS 虛擬目錄和 ASP.NET 目錄路徑

  • September 19, 2009

問題

我遇到了典型的虛擬目錄困境,因為您的 ASP.Net 應用程序上有一些路徑,並且您將應用程序部署在 IIS 虛擬目錄中。然後所有與“web root”(fi,“/images”)相關的路徑都不起作用,因為應用程序位於虛擬目錄路徑中。


解決方案

**A.**將“images”文件夾設為虛擬目錄。這樣“/images”將永遠存在。

**B.**用作"<%=Request.ApplicationPath%>/Imagenes"我的圖像的來源。這在 IIS 中效果很好,但我在設計時和調試時都看不到它。

此解決方案還包括以下說明:

  • System.Web.VirtualPathUtility.ToAbsolute
  • 解析客戶端網址
  • 請求.ApplicationPath

**C.**使用目前控制項/頁面的相對路徑。這確切地知道圖像文件夾相對於我目前文件的位置(無需轉到根目錄。所以我會使用“”、“../”、“../../”等內容。


我正在尋找的解決方案

這麼說的。我不喜歡這些解決方案。我想在 web.config 文件或 IIS 中找到解決方案。我在 web.config 文件中編寫的一些配置指令告訴 IIS 我的應用程序實際駐留在哪裡(虛擬目錄)。

有什麼建議嗎?

您是否在可以的地方使用波浪號 (~) 作為路徑?

~ 指虛擬 Web 應用程序的根目錄….

〜/圖像例如。

引用自:https://stackoverflow.com/questions/1449267