Asp.net mvc 如何将BundleConfig.cs添加到项目中?

Asp.net mvc 如何将BundleConfig.cs添加到项目中?,asp.net-mvc,asp.net-mvc-4,visual-studio-2013,Asp.net Mvc,Asp.net Mvc 4,Visual Studio 2013,我有一个ASP.Net MVC项目,我想实现捆绑,但我在internet上找到的所有东西都指示我在App_Start中打开BundleConfig.cs——但是我的项目中不存在此文件。该文件夹中只有三个文件:FilterConfig、RouteConfig和WebApiConfig 在我创建解决方案时没有生成Bundle config(IIRC它在开始时是一个空白的ASP.NET MVC项目) 看起来这应该很容易做到,但我就是想不出来 另外,为了向那些没有仔细阅读的读者澄清,这是一款全新创建的M

我有一个ASP.Net MVC项目,我想实现捆绑,但我在internet上找到的所有东西都指示我在
App_Start
中打开
BundleConfig.cs
——但是我的项目中不存在此文件。该文件夹中只有三个文件:
FilterConfig
RouteConfig
WebApiConfig

在我创建解决方案时没有生成Bundle config(IIRC它在开始时是一个空白的ASP.NET MVC项目)

看起来这应该很容易做到,但我就是想不出来


另外,为了向那些没有仔细阅读的读者澄清,这是一款全新创建的MVC4/.Net 4.5应用程序。解决方案标记在下面。

BundleConfig
只不过是将捆绑配置移动到单独的文件中。它曾经是应用程序启动代码的一部分(过滤器、捆绑包、路由过去在一个类中配置)

要添加此文件,首先需要将
Microsoft.AspNet.Web.Optimization
nuget包添加到Web项目中:

Install-Package Microsoft.AspNet.Web.Optimization
然后在App_Start文件夹下创建一个名为
BundleConfig.cs
的新cs文件。以下是我的矿井(ASP.NET MVC 5,但它应该与MVC 4配合使用):

然后修改您的Global.asax并在
应用程序启动()中添加对
注册绑定()的调用:

一个密切相关的问题:

如果您使用的是“MVC 5”,您可能看不到该文件,您应该遵循以下步骤:


如果您使用的是“ASP.NET 5”,那么它已经停止使用“捆绑和缩小”,取而代之的是gulp、bower和npm。更多信息请参见

,您找不到它,因为它仅包含在ASP.NET 4.5项目模板中。我假设您使用的是ASP.NET的早期版本。可能是@Liam Nope的副本。正如问题中明确指出的,这是关于一个新创建的应用程序,而不是从MVC3转换而来的。它还非常清楚地说明了如何添加BundleConfig.cs文件,而不是如何添加对System.Web.Optimization的引用(这在本问题的场景中是完全不必要的)。我不得不假设您试图对一个完全不同的问题发表评论。@Liam-事实上,我知道您可能被答案弄糊涂了,其中包括“将Microsoft.AspNet.Web.Optimization nuget包添加到您的Web项目”这一步骤,而该步骤不是上述问题的解决方案的一部分。解决方案是添加BundleConfig.cs文件。我确实在对答案的评论中说了这一点……但这一评论(以及其他所有关于答案的评论)似乎已经消失了。nuget应该添加一个样板版本。
using System.Web;
using System.Web.Optimization;

namespace CodeRepository.Web
{
    public class BundleConfig
    {
        // For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862
        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*"));

            // Use the development version of Modernizr to develop with and learn from. Then, when you're
            // ready for production, use the build tool at http://modernizr.com to pick only the tests you need.
            bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
                        "~/Scripts/modernizr-*"));

            bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
                      "~/Scripts/bootstrap.js",
                      "~/Scripts/respond.js"));

            bundles.Add(new StyleBundle("~/Content/css").Include(
                      "~/Content/bootstrap.css",
                      "~/Content/site.css"));
        }
    }
}
using System.Web.Optimization;

protected void Application_Start()
{
    AreaRegistration.RegisterAllAreas();
    RouteConfig.RegisterRoutes(RouteTable.Routes);
    BundleConfig.RegisterBundles(BundleTable.Bundles);
}