ASP.NET捆绑包的通配符

时间:2017-10-05 19:34:39

标签: c# asp.net-mvc

我看到RegisterBundles默认包含一些包:

public static void RegisterBundles(BundleCollection bundles)
{
    bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                "~/Scripts/jquery-{version}.js"));

    bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                "~/Scripts/jquery.validate*"));
}

我也想添加这两个文件,但我不知道如何使用外卡:

bundles.Add(new ScriptBundle("~/bundles/jqueryunobtrusive").Include(
            "~/Scripts/jquery.unobtrusive-ajax.min.js"));

bundles.Add(new ScriptBundle("~/bundles/jquerysignalr").Include(
            "~/Scripts/jquery.signalR-2.2.2.min.js"));

2 个答案:

答案 0 :(得分:1)

答案在默认包中,即jquery.validate脚本末尾的*。

如果要为两个新脚本使用通配符,则公共根是〜/ Scripts / jquery *

请注意,您必须删除这两个默认包,因为它们共享相同的根,否则它们将被双重注册,这可能会导致问题。

答案 1 :(得分:1)

bundles.Add(new ScriptBundle("~/bundles/jqueryunobtrusive").Include(
        "~/Scripts/jquery.unobtrusive-ajax*"));

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

您可以在您认为希望其余的通配符出现的地方添加*

~/Scripts/jquery.*将加载以“jquery”

开头的所有javascript文件