1

現在、JavaScript と CSS の両方を 1 つのファイルにバンドルする .net フレームワークの一部である Web 最適化バンドラーを使用しています。これはうまく機能します。

しかし、私はそれで問題に遭遇しました。次のコードを参照してください。

 BundleTable.Bundles.Add(new ScriptBundle("mybundle").Include( 
                "~/Scripts/globalize.js", 
                "~/Scripts/jquery.validate.js", 
                string.Format("~/resources.axd")));

これにより、ファイルからすべての JavaScript がバンドルされますが、.axd http ハンドラからの出力もバンドルしたいと思います。これは JavaScript を返します。ただし、javascript がバンドルに含まれることはありません。ブラウザーでハンドラーを実行しても問題ありません。javascript が返されます。

バンドラーが .axd 拡張子を認識しないため、ファイルを要求しようとしないのではないかと思います。これが事実であり、回避策である場合のアイデアはありますか?

4

2 に答える 2

0

resx 用のスクリプト バンドルを作成しました。ソースはここにあります。

https://github.com/MrAntix/sandbox-resx-script-bundling

BundleConfig で、バンドルを追加します ...

bundles.Add(
  new ResxScriptBundle("~/bundles/local")
      .Include<JsResources>("app")
  );

このようにリソースごとにモデルを作成し……

window.resources=window.resources||{};
window.resources.app = {
  "HelloWorld": "Hello World, from JSResources.resx"
};

そして、このようにJSで使用できます...

$("h1").append(window.resources.app.HelloWorld);

... 例えば

于 2013-12-06T18:40:41.107 に答える
0

正解です。バンドルに含めることができるのはファイルのみです。axd にリクエストを送信することはありません。できることは、手動で axd を実行し、ファイルをディスクに保存して、それをバンドルに含めることです。

于 2013-02-14T22:43:51.210 に答える