4

私はこれを持っています:

bundles.Add(new StyleBundle("~/Content/Styles/Default").Include("~/Content/Styles/Default/Site.css"));

そして、これを作成します:

<link href="/Content/Styles/Default?v=HG5hShy6_NaqI7SUDWQuc6zijexRxZooKF4ayIgK5tY1" rel="stylesheet">

ここで、Web サーバーでディレクトリの参照を有効にしました。そのスタイル パスをクリックすると、ファイルではなくディレクトリに移動します。なんで?

更新:私はまだその質問を解決できませんでした。リンクにアクセスしたときに得られるhttp://myserver/Content/Styles/Default?v=HG5hShy6_NaqI7SUDWQuc6zijexRxZooKF4ayIgK5tY1のはファイルのリストだけです(ftpのように)

4

2 に答える 2

9

まずはこちらの記事をご覧ください

バンドルは ASP.NET 4.5 の新機能で、複数のファイルを 1 つのファイルに簡単に結合またはバンドルできます。CSS、JavaScript、その他のバンドルを作成できます。ファイルが少ないということは、HTTP リクエストが少なくなることを意味し、最初のページの読み込みパフォーマンスを向上させることができます。

リクエスト

http://localhost/MvcBM_time/bundles/AllMyScripts?v=r0sLDicvP58AIXN_mc3QdyVvVj5euZNzdsa2N1PKvb81

バンドル AllMyScripts 用で、クエリ文字列のペア v=r0sLDicvP58AIXN_mc3QdyVvVj5euZNzdsa2N1PKvb81 が含まれています。

クエリ文字列 v には、キャッシュに使用される一意の識別子である値トークンがあります。バンドルが変更されない限り、ASP.NET アプリケーションはこのトークンを使用して AllMyScripts バンドルを要求します。バンドル内のいずれかのファイルが変更された場合、ASP.NET 最適化フレームワークは新しいトークンを生成し、バンドルに対するブラウザーの要求が最新のバンドルを取得することを保証します。

これは、ファイルを含むディレクトリを追加する方法です

bundles.Add(new StyleBundle("~/jQueryUI/themes/baseAll")
    .IncludeDirectory("~/Content/themes/base", "*.css"));

複数のファイルを追加する方法は次のとおりです。

bundles.Add(new StyleBundle("~/Content/themes/base/css").Include(
          "~/Content/themes/base/jquery.ui.core.css",
          "~/Content/themes/base/jquery.ui.resizable.css",
          "~/Content/themes/base/jquery.ui.selectable.css",
          "~/Content/themes/base/jquery.ui.accordion.css",
          "~/Content/themes/base/jquery.ui.autocomplete.css",
          "~/Content/themes/base/jquery.ui.button.css",
          "~/Content/themes/base/jquery.ui.dialog.css",
          "~/Content/themes/base/jquery.ui.slider.css",
          "~/Content/themes/base/jquery.ui.tabs.css",
          "~/Content/themes/base/jquery.ui.datepicker.css",
          "~/Content/themes/base/jquery.ui.progressbar.css",
          "~/Content/themes/base/jquery.ui.theme.css"));
于 2013-02-24T05:55:47.680 に答える
4

これは古い質問ですが、解決策を探していたときに Google からここに指摘されたので、自分に合ったものを追加しようと思いました。

私はあなたと同じ問題を抱えていて、同じだと思うこの他の質問に出くわしました:

MVC4 - 最適化が true に設定されている場合、バンドルが機能しない

問題は、実際には存在するがディレクトリである仮想 URL にバンドルを配置することだと思います。

バンドルパスを変更すると、私が抱えていた問題が修正されました。

于 2015-05-15T15:04:27.767 に答える