无法使用ScriptBundle类将SignalR JavaScript与优化捆绑在一起

时间:2013-02-03 06:00:58

标签: asp.net-mvc signalr scriptbundle

安装SignalR NuGet包后:

Install-Package Microsoft.AspNet.SignalR -pre 

我收到以下文件:

jquery.signalR-1.0.0-rc2.js
jquery.signalR-1.0.0-rc2.min.js

我注册了这个包:

bundles.Add(new ScriptBundle("~/bundles/jquery.signalR").Include(
            "~/Scripts/jquery.signalR-{version}.js"));

在我看来,我打电话给:

@Scripts.Render("~/bundles/jquery.signalR")

这一切都在开发过程中起作用,但一旦启用:

BundleTable.EnableOptimizations = true;

捆绑包无法呈现脚本。

我也尝试过:

bundles.Add(new ScriptBundle("~/bundles/jquery.signalR").Include(
            "~/Scripts/jquery.signalR-{version}-rc2.js"))

这有点无用,因为使用{version}的全部意义是为将来的版本做好准备,而下一个版本正在摆脱" -rc2"位。

如何有效地使用外卡匹配来匹配脚本:

jquery.signalR-1.0.0-rc2.js

正在开发中,

jquery.signalR-1.0.0-rc2.min.js

在制作中,同时为SignalR的未来更新做好准备?

1 个答案:

答案 0 :(得分:3)

捆绑中的{version}名字对于预发行脚本不起作用。要使用预发布脚本,您可以使用以下注册

bundles.Add(new ScriptBundle("~/bundles/jquery.signalR").Include(
        "~/Scripts/jquery.signalR*"));