【问题标题】:Why do I have to add '/Content/' to uris when using Url.ContentUri?为什么在使用 Url.ContentUri 时必须在 uris 中添加 '/Content/'?
【发布时间】:2011-04-26 19:45:22
【问题描述】:

为什么我在使用Url.Content时必须在uri中添加/Content/?方法有什么用? :) 我错过了什么吗?

<link rel="stylesheet" type="text/css" href="<%= Url.Content("~/Content/StyleSheets/screen.css") %>" media="screen" />

【问题讨论】:

    标签: asp.net-mvc url-rewriting


    【解决方案1】:

    根据docs

    将虚拟(相对)路径转换为应用程序绝对路径。

    如果您的内容位于 /Content 目录中,则需要包含它。并非所有内容都存在于 /Content 目录中。例如,在我目前正在开发的应用程序中,javascript 存在于 /scripts 中,因此我们使用

    Url.Content("~/scripts/xyz.js");
    

    它将虚拟路径转换为应用程序的绝对路径。

    由于应用程序可能安装在网络服务器的根目录或目录中,因此您永远不知道绝对路径是否安全。使用这个方法可以解决这个问题。

    【讨论】:

    • 这个名字应该更通用一点,因为 MVC 项目默认有“Content”文件夹。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-21
    • 1970-01-01
    相关资源
    最近更新 更多