ASP MVC4使用默认包而不是我自己的包?

时间:2012-09-05 11:43:01

标签: asp.net-mvc asp.net-mvc-4 asp.net-optimization

我在Application_Start()中有以下代码:

    protected void Application_Start() {

        AreaRegistration.RegisterAllAreas();
        WebApiConfig.Register(GlobalConfiguration.Configuration);
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        RoleConfig.CreateRoles();
        BundleConfig.RegisterBundles(BundleTable.Bundles);

namespace WebUx {
    public class BundleConfig {
        // For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkId=254725
        public static void RegisterBundles(BundleCollection bundles) {

            bundles.Add(new ScriptBundle("~/bundles/admin").Include(
                        "~/Scripts/admin/adminControl.js",
                        "~/Scripts/admin/adminModalOpen.js",
                        "~/Scripts/admin/adminModalOpen.js",
                        "~/Scripts/admin/getExamOptions.js",
                        "~/Scripts/admin/getParams.js",

当我使用debug打破Application_Start的第一行然后检查BundleTable.Bundles时,我看到BundleCollection中已有条目。

这些条目不是我的条目,它们似乎与我的应用程序中的文件无关。相反,它们似乎是默认值。例如,我的应用程序只有一个jQuery文件,而BundleCollection有七个与jQuery相关的js文件。

是否有人知道这些文件在BundleCollection中的原因和原因以及它们的设置方式?

例如:我如何以及为什么找到名为moo,dojo,prototype,ext等的包。这些不是我创建的包,所以它们都来自哪里。我在这里完全糊涂了。找不到任何会导致创建这些包的东西。

1 个答案:

答案 0 :(得分:2)

我认为您可能正在查看一些默认排序约定,而不是捆绑包中的实际包含文件。我的预感是你正在看FileSetOrderList,它基本上为一些通常需要首先(即jquery)的众所周知的js框架做一些促销。

您可以通过调用捆绑集合中的ResetAll()来消除所有默认约定。但是一般来说,如果你要包含* .js。

,他们只会帮助隐式排序