簡體   English   中英

正確處理URL - 生產與開發(ASP.NET)

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM