asp.net2.0 相對應用程式 路徑 “~/”

來源:互聯網
上載者:User

在引用資源的 ASP.NET 伺服器控制項中,可以使用絕對路徑或相對路徑,這一點與用戶端元素一樣。如果使用相對路徑,則相對於頁面、使用者控制項或包含該控制項的主題的路徑進行解析。例如,假設 Controls 檔案夾中包含一個使用者控制項。該使用者控制項包含一個 Web 伺服器控制項,該伺服器控制項的 屬性設定為以下路徑:

Images/SampleImage.jpg

該使用者控制項運行時,路徑將解析為以下形式:

/Controls/Images/SampleImage.jpg

無論承載使用者控制項的頁面位置如何,都是如此。

伺服器控制項中的絕對和相對路徑引用具有以下缺點:

  • 絕對路徑在應用程式之間是不可移植的。如果移動絕對路徑指向的應用程式,則連結將會中斷。

  • 如果將資源或頁面移動到不同的檔案夾,可能很難維護採用用戶端元素樣式的相對路徑。

為克服這些缺點,ASP.NET 啟用了 Web 應用程式根目錄運算子 (~),在伺服器控制項中指定路徑時,可以使用該運算子。ASP.NET 會將 ~ 運算子解析為當前應用程式的根目錄。可以結合使用 ~ 運算子和檔案夾來指定基於當前根目錄的路徑。下面的樣本示範使用 Image 伺服器控制項時用於指定映像的根目錄相對路徑的 ~ 運算子:

  複製代碼
<asp:image runat="server" id="Image1"  ImageUrl="~/Images/SampleImage.jpg" />

在該樣本中,影像檔將從 Web 應用程式根目錄下的 Images 檔案夾中直接讀取,無論該頁面位於網站的什麼位置。

注意

~ 運算子只能為伺服器控制項識別,並且位於伺服器代碼中。不能將 ~ 運算子用於用戶端元素。

可以在伺服器控制項中的任何與路徑有關的屬性中使用 ~ 運算子。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.