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

问题描述:

我在我的Application_Start()下面的代码:ASP MVC4使用默认包而不是我自己的包?

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", 

当我使用调试上破的Application_Start的第一线,然后检查BundleTable.Bundles我见BundleCollection中已经有条目。

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

有谁知道这些文件是如何在BundleCollection中以及它们是如何设置的?

例如:我如何以及为什么会找到名为moo,dojo,prototype,ext等的包。这些不是我创建的包,因此它们都来自哪里。我在这里完全困惑。找不到可能导致创建这些包的任何内容。

我想你可能会看到一些默认的排序约定,而不是捆绑中的实际包含文件。我的预感是你正在看FileSetOrderList,它基本上为一些通常需要优先考虑的js框架(即jquery)做了一些订单推广。

您可以通过在您的捆绑包集合上调用ResetAll()来摆脱所有默认约定。但是一般来说,如果你要包含* .js,它们只能帮助隐式排序。