【问题标题】:Relative path in ASP.NETASP.NET 中的相对路径
【发布时间】:2011-07-09 15:07:45
【问题描述】:
<head runat="server">
    <meta charset="UTF-8" />
    <title>Make Games with Scirra Software</title>
    <meta name="description" content="Game making with Construct." />
    <meta name="keywords" content="game maker, game builder, html5, create games, games creator" />
    <link rel="stylesheet" href="~/css/default.css" />
    <link rel="stylesheet" href="~/plugins/coin-slider/coin-slider-styles.css" />
    <link rel="shortcut icon" href="~/images/favicon.ico" />
    <link rel="apple-touch-icon" href="~/images/favicon_apple.png" />
    <script src="~/js/googleAnalytics.js"></script>
</head>

呈现为:

<head>
    <meta charset="UTF-8" />
    <title>Make Games with Scirra Software</title>
    <meta name="description" content="Game making with Construct." />
    <meta name="keywords" content="game maker, game builder, html5, create games, games creator" />
    <link rel="stylesheet" href="../css/default.css" />
    <link rel="stylesheet" href="../plugins/coin-slider/coin-slider-styles.css" />
    <link rel="shortcut icon" href="../images/favicon.ico" />
    <link rel="apple-touch-icon" href="../images/favicon_apple.png" />
    <script src="~/js/googleAnalytics.js"></script>
</head>

为什么 JavaScript URL 是 ~/ 而不是 ../

【问题讨论】:

    标签: asp.net path relative-path tilde


    【解决方案1】:

    确实很奇怪的实现,但不幸的是,这就是 ASP.NET 处理这个问题的方式。这是我做的补偿:

    <script src="<%=ResolveClientUrl("~/js/googleAnalytics.js")%>"></script>
    

    【讨论】:

    • 您可能只需要 ResolveUrl(),因为 ResolveClientUrl 会创建整个 URL,而不仅仅是相对路径。
    • 谢谢,我尝试了这些东西的每一种组合,但最好的解决方法是:。我的网站位于 ScirraNew 文件夹中,但需要解析为 ../js/Googleanalytics.js!
    • 这工作正常,但呈现为链接标签,叹息:(
    • @Tom Gullen - 你确定你使用的是ResolveClientUrl(不是ResolveUrl)。相信前者创建 ../ 样式路径,而后者创建根相对路径。不过,我现在要测试一下。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多