我的生产环境位于主 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/