对于ASP.NET MVC中的URL,Url.Content("〜/ ...")和"〜/"之间是否存在差异?

Ada*_*son 6 asp.net asp.net-mvc asp.net-mvc-4

我正在处理驻留在域的子目录中的Web应用程序,并且我试图辨别将正确的URL插入img标记的最惯用的方式.虽然以下两者在客户端计算机上生成相同的HTML,但我不确定哪个更"正确"

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

这两者都产生了绝对的路径/subfolder/Content/images/blah.png,所以两者都有效,但我很好奇哪一个是正确的做法.

这两种方法之间是否存在差异(例如,一种方法是通过与另一种方法不同的机制解决的?),还是前者只是后者的语法糖?

Cur*_*urt 18

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

如果Razor检测到〜/它会创建一个与@ Url.Content相同的输出.

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