2

ASP.NET 4.5 Web フォームアプリケーションで新しいバンドルと縮小を使用しています。UnobtrusiveValidationMode が機能するには jquery ScriptResourceMapping が必要ですが、ScriptBundle 構成を介して登録しています。

私はこのように使用しています:

bundles.Add(new ScriptBundle("~/Content/Scripts").Include("~/Content/jquery-1.9.0.js"));

しかし、これはエラーを生成します:

WebForms UnobtrusiveValidationMode には、'jquery' の ScriptResourceMapping が必要です。jquery (大文字と小文字を区別) という名前の ScriptResourceMapping を追加してください。

エラーを修正するには、次のようにします。

ScriptManager.ScriptResourceMapping.AddDefinition("jquery", new ScriptResourceDefinition { Path = "~/Content/jquery-1.9.0.js" });

しかし、Bundling と Minification を使用して、すべてのアプリケーション スクリプトを組み合わせて最小化したいと考えています (この例では、単純にするために jquery ファイルのみを使用しています)。この場合の最善の解決策は何ですか?

4

1 に答える 1

3

これは解決策であり、Bundle と Minification で動作しますが、それが最適かどうかはわかりません。

bundles.Add(new ScriptBundle("~/Content/Scripts")
    .Include("~/Content/jquery-1.9.0.js")
    .Include("..."));

ScriptManager.ScriptResourceMapping.AddDefinition("jquery", new ScriptResourceDefinition { Path = "~/Content/Scripts" });

ScriptResourceDefinition.Path は ScriptBundle 仮想パスと同じです。

于 2013-02-06T16:11:24.910 に答える