【问题标题】:why use @Url.Content为什么使用@Url.Content
【发布时间】:2012-03-01 11:49:48
【问题描述】:

谁能解释一下为什么我应该使用(或者我应该使用?):

<script type="text/javascript" src="@Url.Content("/Scripts/SomeScript.js")"></script>

 <script type="text/javascript" src="/Scripts/SomeScript.js"></script>

谢谢

【问题讨论】:

    标签: .net asp.net-mvc-3


    【解决方案1】:

    片段@Url.Content("/Scripts/SomeScript.js") 完全不做任何事情,只相当于/Scripts/SomeScript.js

    但是,对于以“~”开头的路径,它会将 url 转换为正确的应用程序相关 url,例如,@Url.Content("~/Scripts/SomeScript.js") 可以转换为 /MyVirtualDirectory/Scripts/SomeScript.js,如果您将 Web 应用程序部署到下面的虚拟目录 MyVirtualDirectory网站的根文件夹。

    【讨论】:

    • +1,换句话说:Url.Content 确保所有链接都能正常工作,无论该站点是在虚拟目录中还是在网站根目录中。
    • 只是一个补充说明:Url.Content 到目前为止它提供了很大的帮助,但在 MVC4/Razor2.0 中不再需要它,我们现在可以使用:src="~/Scripts/SomeScript.js"
    • 另外,因为默认的typetext/javascript,所以可以忽略它。这适用于所有当前的,甚至是旧的浏览器。
    猜你喜欢
    • 2011-05-23
    • 1970-01-01
    • 2014-10-26
    • 1970-01-01
    • 1970-01-01
    • 2013-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多