Asp.net

ASP.NET MVC 中的 URL 的 Url.Content(’~/…’) 和 ‘~/’ 有區別嗎?

  • April 19, 2018

我正在處理一個駐留在域上的子目錄中的 Web 應用程序,並且我試圖找出將正確的 URL 插入img標籤的最慣用的方法。雖然以下兩者都在客戶端電腦上生成相同的 HTML,但我不確定哪個更“正確”

  • <img src="~/Content/images/blah.png" />
  • <img src="@Url.Content("~/Content/images/blah.png")

這兩者都產生了絕對路徑/subfolder/Content/images/blah.png,所以兩者都有效,但我很好奇哪一個是正確的做法。

這兩種方法之間有什麼區別(例如,一種方法是通過與另一種不同的機制解決的嗎?),還是前者只是後者的語法糖?

使用 MVC4,您不再需要@Url.Content

如果 Razor 檢測到 ~/,它將創建與 @Url.Content 相同的輸出。

http://www.beletsky.net/2012/04/new-in-aspnet-mvc4-razor-changes.html

沒有什麼是“更正確的”。我會使用速記,因為 Razor 現在支持它。

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