![](/img/trans.png)
[英]URLs get invalid while deploying ASP.NET MVC application from development server to production server
[英]Handling URLs correctly — production vs development (ASP.NET)
我的制作環境位於主網址www.example.com/sample
的目錄中。 我的大部分網址都使用~
解析得很好,所以~/default.aspx
解析為www.example.com/sample/default.aspx
。
但是,我的css javascript都沒有在生產中正確加載。 我有腳本src設置為,例如, js/sample.js
,我已經嘗試~/js/sample.js
,它沒有解決。 我在<script>
標記中嘗試了runat="server"
,但有時會出錯。 我有:
<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>
更多信息在這里
只需使用js,css和圖像的相對路徑,即js / sample.js
這是一個建議:
<script type="text/javascript" src="<% =HttpRuntime.AppDomainAppVirtualPath & "/js/sample.js"%>"></script>
此外,如果您希望發現此前的路徑問題,可以將Web應用程序設置為在Cassini(內置Web服務器)下的虛擬目錄下運行。
右鍵單擊Web項目,選擇“屬性”,選擇“Web”,然后鍵入虛擬路徑 - 例如/ sample /。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.