c# - 正确处理 URL——生产与开发 (ASP.NET)

标签 c# asp.net url

我的生产环境位于主 url 之外的目录中 www.example.com/sample .使用 ~ 可以很好地解析我的大部分 URL , 所以 ~/default.aspx解析为 www.example.com/sample/default.aspx .

但是,我的 css javascript 都没有在生产中正确加载。我将脚本 src 设置为,例如 js/sample.js , 我试过 ~/js/sample.js它没有解决。我试过 runat="server"<script>标签,但我有时会出错。我有:

<script runat="server" src="~/js/sample.js?<%=   MyCode.VersionInfo.JSTag %>" type="text/javascript"></script>

这里我将版本代码标记到文件名的末尾以在调试期间强制重新加载,然而,使用 runat=server它提示这个。

我确定这是一个常见问题,并且有一个标准的习惯用法来处理它,但我似乎找不到它。有人能帮我吗? ~ 何时以及如何膨胀,人们如何处理这种事情?

很可能当网站全面生产时,它会在没有子目录的情况下进入,所以我需要系统地处理这个问题。

最佳答案

您正在寻找的是:

<script type="text/javascript" src="<%= this.ResolveUrl("~/js/sample.js?" + MyCode.VersionInfo.JSTag) %>"></script>

更多信息here

关于c# - 正确处理 URL——生产与开发 (ASP.NET),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5196007/

相关文章:

asp.net - IIS 服务器内存不足会导致 SQL 超时(SQL Server 在单独的机器上)吗?

javascript - 使用 Javascript 将 URL 转换为可点击的链接

file - 打开后关闭 URL 1 by 1(从文本文件读取 URL,循环)

c# - 如何在 EmguCV 中将图像转换为矩阵,然后将矩阵转换为位图?

asp.net - 从 ASP.NET MVC5 中的 Url 中删除多余的斜杠,

c# - 如何打开多个连接来下载单个文件?

c# - 将 PHP 函数转换为 C#

rest - URL:用分号代替问号

c# - 为什么 main 不等到异步方法完成?

c# - 将两个 PHP 函数转换为 C#