MVC 6 中的捆绑和缩小

Bundling and Minification in MVC 6

看起来 MVC 6 中不再内置 Bundling 和 Minification,因为不再有 App_StartBundle.Config

最终发布后会是这样吗?

我猜应该使用 Grunt,因为它似乎已融入 Visual Studio 2015 年。

更新:看起来微软已经在 RC1 中切换到 Gulp 而不是 Grunt。

Grunt 是 ASP.NET 5 个应用程序中推荐的方法。没有计划构建像以前的 ASP.NET 捆绑和缩小(优化)系统那样的系统。

捆绑器和压缩器扩展

默认 ASP.NET Core MVC 6 项目模板使用 Bundler & Minifier 扩展。默认模板曾经使用 Gulp,它的功能要强大得多,但对于想要简单的东西的新手开发人员来说,它被认为太复杂了。您可以阅读更多关于从 Gulp 切换到 here or read the documentation for the Bundler & Minifier extension here.

的原因

WebPack、Gulp、Grunt、Brocoli 等

一个更好、更强大的方法是使用 Gulp, or any other task runner (There are others named Grunt, Brocoli etc. Gulp is apparently nicer to work with and newer than Grunt but also more popular than Brocoli). You can use the ASP.NET MVC Boilerplate 项目模板来获得一个内置 Gulp 的项目。

这个街区的新孩子被称为 WebPack,根据 Google 目前的流行程度与 Gulp 差不多。

ASP.NET MVC 5 捆绑和缩小以及 Smidge

ASP.NET MVC 5 中的旧捆绑和缩小已被删除,但 GitHub 上有一个项目为 MVC 6 构建它,名为 Smidge

VS2015 有一个用于捆绑和缩小文件的扩展,可在此处获取: https://visualstudiogallery.msdn.microsoft.com/9ec27da7-e24b-4d56-8064-fd7e88ac1c40

我刚刚使用了它,还创建了一个 html 帮助程序来在调试模式下呈现 unbundled/unminified 文件,此处提供了帮助程序:
https://bundlerminifierhelper.codeplex.com/

使用这些您不需要了解 gulp、任务运行器等

SquishIt 提供与 MVC 5 捆绑非常相似的功能和 API。实际上它早于 MVC 捆绑。如果你想留在 .NET 领域,确保你可以发展到更高级的捆绑场景,这些场景需要与上下文路由属性更紧密地集成,避免浪费时间调试服务器端 javascript,当你做一个小的时候,服务器端会静默失败打字错误或错位需要您仔细查看所有属性,并利用我们熟悉和喜爱的语言,那么我推荐 SquishIt。

Javascript 有它的位置。在我看来,这不是它的位置。

通过使用 squishit,您还可以将 ASP.NET 团队的突发奇想与事情脱钩。

或者,如果您正在寻找一个非常简单的 轻量级 ASP.NET Core MVC6 Gulp 模板(而不是默认的 .NET Core 包),你可以看看my github项目。