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" });

但我想使用捆绑和缩小来组合和最小化所有应用程序脚本(在这个例子中我只使用 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 回答