ここに私の助言があります:ビルドタスクとHTTPキャッシュ出力を使用します。
ビルドの面では、プロジェクトファイル、MSBUILDファイル、またはNANTファイルにプラグインできるコマンドラインユーティリティを備えた、お気に入りのJavaScriptマイナー(私のお気に入りはGoogle Closure Minifier)をチェックアウトすることをお勧めします。 CSS(私は個人的にはYahoo! YUI Compressorを使います)と同じです。 LESSを使用している場合は、確かにこれをYUIコンプレッサーと組み合わせることができます。画像を最適化するには、optipngを使用します。これらの人が個々のサイトでどのように働くかについての指針があります。
これらのファイルをすべて最適化して最適化したら、MVCのハンドラまたはコントローラアクションを使用してそれらのファイルを出力します。後続の要求は最初の要求に応じてダウンロードしたファイルがデフォルトになりますように有効期限を設定するには、これはあなたのコードで実行したいと思う:
Response.ExpiresAbsolute = DateTime.Now.AddYears(1);
あなたはとてもキャッシュバスターの戦略をお勧めします可能性が高い以上のものをコンテンツファイルを変更することができます。これを行うには、ランダムなパラメータをハンドラに渡します。これについてはいくつかの異なる方法があります... Googleだけです。
これが役に立ちます。
レスポンスありがとう、私はCSSやJS(ASP.NETとPHPの両方)を処理するためにこのようなパイプラインを手作業で組み立てていましたが、バンドル/コンポーネントは見たことがありますか? – artvolk
@artvolk「バンドル/コンポーネント」とはどういう意味ですか? – zowens
私は何かを意味しています(ライブラリ?dll?msbuild task?)これは素晴らしい方法ですべてをVSにラップします。 – artvolk