2013-03-05 58 views
0

有沒有辦法在我的webforms aspx頁面中修改js和css文件的所有鏈接,而無需調用輔助函數?在aspx頁面修改網址

我想寫一個網址:
FROM ..... /腳本/ file.js
TO ..... /腳本/ 634969723944992444/file.js

我可以這樣做:

<script type="text/javascript" src="<%=Url.Helper(@"Scripts/file.js")%>"></script> 

當助手功能將包括文件的最後修改時間在網址中打勾。

有沒有一種簡單的方法,我可以修改所有我的網頁上的URL使用這種幫助功能?

謝謝

+0

什麼是你想通過添加最後修改時間來完成? – MikeSmithDev 2013-03-05 20:56:28

+0

我只是想實現js和css文件的自動版本控制,以便瀏覽器始終獲取最新文件,但仍然緩存文件直到它們發生更改。 – Harish 2013-03-05 21:42:17

回答

0

你可以寫一個HTTPModule來做到這一點。您還可以,而不是把時間路徑只是使用查詢字符串來標記更新

file.js?V = 1個 file.js?V = 2個 file.js?V = 3 等

+0

如果我使用查詢字符串,我認爲瀏覽器永遠不會緩存文件。 – Harish 2013-03-05 21:43:32

+1

當然,他們會改變QS值,這就是查詢字符串的重點。 – 2013-03-05 21:44:28

+0

我不確定,但查詢字符串方法不在網上推薦。 http://derek.io/blog/2009/auto-versioning-javascript-and-css-files/ – Harish 2013-03-05 22:17:32

0

老實說,我認爲你最好的選擇是放棄你的努力,只使用Bundling and Minification

除了捆綁(減少HTTP請求的數量)和縮小(減小文件大小)之外,它還會自動版本化捆綁包(使用查詢字符串),確保瀏覽器隨時獲得最新版本,樣式表更改。

如果您使用的是ASP.NET 4.5,則您已經可以訪問此功能。對於舊版本,您可以通過NuGet進行安裝。

其他有用的鏈接: Adding Bundling and Minification to Web Forms