すべての javascript と css (より少ないファイルなど) を、CDN として使用するサイトでホストされる別のサイトに移動しようとしています。
ただし、MVC ScriptBundle および StyleBundle クラスを利用して、BundleTransformer.Less に関連付けたいと考えています。
最初は、次のようなテスト スクリプト バンドルを試してみました。
Bundle mainScript = new ScriptBundle("~/bundles/scripts/test.js", @CDNUrl + "lib/jquery/2.1.4/jquery-2.1.4.js");
bundles.Add(mainScript);
ここでの問題は、デバッグ モードまたは最適化がオフの場合、何も含めていないため、スクリプトが出力されないことです。最適化をオンにすると、cdn リンクがスクリプト タグにドロップされます。
理想的には、サイトにスクリプトとスタイルを含める必要はありません (仮想ディレクトリを cdn 上の場所にマップできます)。
私がやりたいことは、CDN ですべてのバンドルをビルドし、それらにリンクすることです。
<script src="//cdn.etc.com/bunles/xyzSiteScripts.js"></script>
ただし、最小化されたリンクは次のように生成されます。
<script src="/bundles/scripts/test2.js?v=SQINHU6JqPGF50s4ugWSC_sMpTAqiQhXWc8eDYzbyDg1"></script>
クエリ文字列の v はキャッシュバスターです。それらにリンクするだけでは、すべてのリンクを新しいキャッシュバスターで手動で更新する必要があると考えられます。
私が行方不明になっているこれを処理する方法はありますか?私が集めたものから、バンドルを CDN 自体に移動すると、かみそりテンプレートで @Scripts または @Styles を使用できなくなります。