我正在使用SquishIt在MVC 3項目中合併和縮小我的JavaScript文件。我試圖創建一個脫機cache.manifest和編輯之間改變的哈希碼正在殺死我。有沒有辦法刪除附加到包的哈希?有沒有一種方法可以從SquishIt中的組合javascript文件中刪除哈希?
我檢查了BundleBase.cs班,並看到一個HashKeyNamed
方法,但無法弄清楚我會在哪裏使用它。
這裏是我現有的合成方法:
@Html.Raw(SquishIt.Framework.Bundle.JavaScript()
.Add("~/js/libs/persistence.js")
.Add("~/js/offline.common.js")
.Add("~/js/offline.syncmanager.js")
// snip...
.ForceRelease()
.WithMinifier(SquishIt.Framework.JavaScript.Minifiers.JavaScriptMinifiers.NullMinifier)
.Render("~/js/offline_script.js"))
您提到的方法可能是打算添加到界面,但我無法肯定地說。我懷疑你最好用一種允許從渲染文件名中排除查詢字符串散列的方法(不只是重命名它)。我建議在github上打開一個問題 - 繞過緩存失效的用例似乎足夠合理,而且我可以看到此更改對其他用戶有用。 – AlexCuse 2012-02-23 10:26:51
@AlexCuse謝謝。我提到HashKeyNamed屬性的原因是因爲如果將它設置爲null,我會注意到render方法會繞過將它添加到URL中。 – Jacob 2012-02-23 14:48:58
啊,好的。我們可以在幕後使用它,但我認爲'WithoutHash'方法可能更有意義。由於這會癱瘓正常的瀏覽器緩存,我認爲儘可能明確地儘可能明確。 – AlexCuse 2012-02-23 21:52:12