5

ASP.NET バンドルを自分のサイトに移動していますが、著作権ヘッダー コメント (CSS および JavaScript) を含むコードからすべてのコメントが削除されていることに気付きました。自分の著作権であれば、自分で作成して自分のIBundleTransform著作権を一番上に追加できるので問題ありませんが、第三者の著作権でこれを行うのは理想的ではありません。

これらの著作権ヘッダー (または、MSDN のドキュメントに記載されていないフラグ) を保持する良い方法はありますか? ありがとう!

4

1 に答える 1

3

現在の回答 (2016 年 1 月更新)

元の回答 (以下を参照) は引き続き有効です。ただし、JavaScript は 2013 年から大幅に変更されました。この急速な変更は、ASP.NET 5 にバンドルが含まれなくなったことによってさらに悪化しています。

私の現在の解決策は、JavaScript ツールを使用してバンドルと縮小を行うことです。Uglifyのようなものには、重要なヘッダー コメントを保持しながら縮小するオプションがあります。これをGulpGruntなどのツールと組み合わせて、ビルド、プロジェクトの読み込み、またはオンデマンドでこのプロセスをトリガーできます。これは、Visual Studio 2015 に組み込まれており、Visual Studio 2013 拡張機能として利用できる「タスク ランナー エクスプローラー」と呼ばれる Visual Studio ウィンドウで実現できます。

圧縮に JavaScript ツールを使用しても、Bundling が解決したキャッシュ無効化の問題は解決されません。これを修正するための JavaScript ツール (つまりgulp-rev ) がありますが、ASP.NET での動作が気に入りません。静的コンテンツのキャッシュ期間を長く維持しながらこれを行う 1 つの方法は、URL で何らかのハッシュまたはフィンガープリントを使用することです。Microsoft の従業員である Mads Kristensen は、ASP.NET でこのキャッシュ無効化を行う方法について、個人のブログに投稿しました。

さらに、HTTP/2 と、前向きなサイトを作成している場合は、以前のようにスクリプトをバンドルに結合する必要はありません。

元の回答

フォローアップとして、私が使用した解決策は、Bundle代わりに、ScriptBundleまたはStyleBundleすべてのサードパーティライブラリ(とにかくすでに縮小されている)を1つのバンドルに貼り付けることでした。

@Robert HaveyのBundle Transformerに対する優れた回答を使用しようとしていたとき、縮小せずにすべてのサードパーティのJSまたはCSSをバンドルできることに気づきました。

于 2013-11-06T16:36:17.783 に答える