Asp.net mvc 如何将BundleConfig.cs添加到项目中?
我有一个ASP.Net MVC项目,我想实现捆绑,但我在internet上找到的所有东西都指示我在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
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);
}