什么../path和〜/ path在MVC中表示?

时间:2017-05-02 10:14:41

标签: asp.net-mvc razor path html-helper src

我有一个名为Image的自定义帮助器类,它有两个参数:

  1. 的src

  2. ALT

  3. 现在我要在View中调用它,

    @Html.Image("../Images/Indian.gif","Image is not supported or exist")
    <img src="~/Images/Indian.gif" alt="Image is not supported or exist" />
    

    现在,这两个都会给我相同的结果,但我很困惑,为什么这两条路径并不相同,以及#34; ../ path&#34;和&#34;〜/ path&#34;指示?

    当我在网络浏览器中检查元素时,它会生成这两行:

    <img alt="Image is not supported or exist" src="../Images/Indian.gif" />
    <img src="/Images/Indian.gif" alt="Image is not supported or exist" />
    

1 个答案:

答案 0 :(得分:2)

  

ASP.NET 中,代字号(~)引用应用程序根目录   目录。另一方面,两个点(..)指的是文件夹   比当前文件夹高一级。

当你只使用相对于网络服务器的../常规路径时。会从当前位置走上一条路径(请记住:. = This location | .. = Up a directory)。

~字符提供虚拟路径并引用网站的根目录。