マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

CSSやJavaScriptなど複数ファイルを、

  • 一つのファイルにまとめる機能(Bundle)
  • 空白や不要な文字を削除してファイルサイズを小さくする機能(Minification)

初期設定

以下をインストールする。

Install-Package Microsoft.AspNet.Web.Optimization

機能と設定

ASP.NET Web FormsASP.NET MVCで機能が若干異なるもよう。

詳しくは下記を参照。

Bundle & Minification

機能概要

CSSやJavaScriptなど複数ファイルを、

  • 一つのファイルにまとめる機能(Bundle)
  • 空白や不要な文字を削除してファイルサイズを小さくする機能(Minification)

を使用するには、BundleConfig?ファイルへの定義が必要になる。

定義方法

基本的に、以下のステートメントを使用して定義を行う。

public static void RegisterBundles(BundleCollection bundles)
{
    // ( new ScriptBundle("~/XXXX") のパスは実在するpathと被るとRender時にバグる。
    // なので、bundlesと実在しないpathを指定している(CSSも同じbundlesを使用する)。

    bundles.Add(
      new ScriptBundle("~/バンドルしたファイルの仮想バス").Include(
          "~/バンドルするファイルの仮想パス 1",
          "~/バンドルするファイルの仮想パス 2",
          "~/バンドルするファイルの仮想パス 3",
          ・・・);

定義方法は、ASP.NET Web FormsASP.NET MVCで若干異なるもよう。

  • JSの設定
  • CSSの設定
    • ASP.NET Web Formsでは、Bundle.configを使用する。
    • ASP.NET MVCでは、ScriptBundle?クラスではなく、StyleBundle?クラスを使用する。

詳しくは下記を参照。

CDNフォールバック

機能概要

Webには色々なフォールバックがあるが、

このうち、BundleConfig?では、CDNフォールバックの機能を提供している。

CDNフォールバックには以下の様なメリットがある。

  • そのライブラリを、CDN経由の高速配信で受け取ることができる。
  • 他のサイトで同じファイルを使用する場合は、キャッシュを共有できる。
  • ライブラリ・ファイルを準備せずにコードを書き始めることができ。

定義方法

こちらも、ASP.NET Web FormsASP.NET MVCで機能が若干異なるもよう。

詳しくは下記を参照。

有効・無効の制御

web.configで設定

デバッグの設定の場合は「無効」になっている。

web.configのcompilation要素のdebug属性がDebugの場合、無効になる。

<compilation debug="true" targetFramework="4.5.2" />

プロムラムから設定

プロムラムから明確に有効・無効を制御できる。

BundleConfig? に有効・無効を記述する。

BundleTable.EnableOptimizations = true;
BundleTable.Bundles.UseCdn = true; // 後述のCDNフォールバック有効・無効

リンクのさせ方

こちらも、ASP.NET Web FormsASP.NET MVCで機能が若干異なるもよう。

詳しくは下記を参照。

参考


Tags: :.NET開発, :ASP.NET, ASP.NET Web Forms, :ASP.NET MVC


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-02-27 (月) 18:21:44 (933d)