나는 ASP.Net MVC 프로젝트를하고 난 번들을 구현하고자하지만, 내가 인터넷에서 찾을 수있는 모든 열거 나 지시 BundleConfig.cs
에 App_Start
– 그러나이 파일이 내 프로젝트에 존재하지 않습니다. 해당 폴더에는 FilterConfig
, RouteConfig
및 WebApiConfig
.
솔루션을 만들 때 번들 구성이 생성되지 않았습니다 (IIRC는 처음에는 빈 ASP.NET MVC 프로젝트였습니다).
이것은 정말 쉬운 일인 것 같지만 나는 그것을 이해할 수 없습니다.
추신 : 자세히 읽지 않는 사람들에게 명확히하기 위해 이것은 처음부터 만든 MVC4 / .Net 4.5 앱용입니다. 솔루션은 아래에 표시되어 있습니다.
답변
BundleConfig
번들 구성을 별도의 파일로 이동하는 것입니다. 이전에는 앱 시작 코드 (필터, 번들, 한 클래스에서 구성하는 데 사용되는 경로)의 일부였습니다.
이 파일을 추가하려면 먼저 Microsoft.AspNet.Web.Optimization
웹 프로젝트에 nuget 패키지를 추가해야합니다 .
Install-Package Microsoft.AspNet.Web.Optimization
그런 다음 App_Start 폴더 아래에라는 새 cs 파일을 만듭니다 BundleConfig.cs
. 다음은 내 광산에있는 것입니다 (ASP.NET MVC 5,하지만 MVC 4에서 작동해야 함).
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"));
}
}
}
그런 다음 Global.asax를 수정하고 RegisterBundles()
in 에 대한 호출을 추가합니다 Application_Start()
.
using System.Web.Optimization;
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
밀접하게 관련된 질문 : System.Web.Optimization for MVC-3-converted-to-4 앱에 대한 참조를 추가하는 방법
답변
“MVC 5″를 사용하는 경우 파일이 표시되지 않을 수 있으며 다음 단계를 따라야합니다. http://www.techjunkieblog.com/2015/05/aspnet-mvc-empty-project-adding.html
“ASP.NET 5″를 사용하는 경우 “번들링 및 축소”사용이 중지되었으며 대신 gulp, bower 및 npm으로 대체되었습니다. 자세한 내용은 https://jeffreyfritz.com/2015/05/where-did-my-asp-net-bundles-go-in-asp-net-5/를 참조 하십시오.