.net core ASP.NET核心MVC 2.1中的bundleconfig.json是否已被某些东西取代?
当我以2.1 RC1为目标创建新的ASP.NET MVC核心时,它不会创建用于绑定和缩小的bundleconfig.json文件。如果我的目标是2.0,则会创建此文件 以下是一个示例,该解决方案包含一个新的目标为2.0的项目和另一个目标为2.1的项目:.net core ASP.NET核心MVC 2.1中的bundleconfig.json是否已被某些东西取代?,.net-core,asp.net-core-mvc,asp.net-core-2.1,.net Core,Asp.net Core Mvc,Asp.net Core 2.1,当我以2.1 RC1为目标创建新的ASP.NET MVC核心时,它不会创建用于绑定和缩小的bundleconfig.json文件。如果我的目标是2.0,则会创建此文件 以下是一个示例,该解决方案包含一个新的目标为2.0的项目和另一个目标为2.1的项目: 是否有什么东西取代了内置的捆绑和缩小,或者这只是RC1中的一个bug?我也遇到了同样的问题,我能够将现有的捆绑文件复制到项目中,这对我很有效。您确实需要安装Bundle&Minifier扩展…另外,请确保您使用的是VS15.7 看起来捆绑包文件
是否有什么东西取代了内置的捆绑和缩小,或者这只是RC1中的一个bug?我也遇到了同样的问题,我能够将现有的捆绑文件复制到项目中,这对我很有效。您确实需要安装Bundle&Minifier扩展…另外,请确保您使用的是VS15.7
看起来捆绑包文件没有包含在最新的项目模板中。bundleconfig.json已从2.1模板中删除,因为它依赖于Microsoft未创建或不支持的工具。看 此文件[bundleconfig.json]用于配置BundlerMinifier工具的各种咒语,该工具实际上没有在模板中提供,也不受Microsoft支持
ASP.NET核心团队已将bundleconfig替换为“libman”。右键单击项目-->添加-->客户端库并添加所需的软件包我刚刚在ASP.NET Core MVC项目上安装了Bundler和Minifier。当我右键单击Bundler and Minifier>Bundle File时,它为我生成了一个
bundleconfig.json
,然后我可以在每次构建时将其设置为Bundle。将我的web应用发布到Azure会发送正确的缩小CSS和JS文件
一个缺点是您必须缩小每个文件,这对我来说并不重要,因为我有2个文件,但我想大多数实际项目将有更多的文件。请注意,这适用于net core 2.2,但不确定是否适用于2.1。另请注意,从net core 3开始,似乎应该(必须?)使用“本地工具”:
最后,我们成功地使用(编写时)推荐的BundlerMinifier.Core
包配置了预构建绑定
将以下内容添加到.csproj文件中:
请注意,这应该是您所需要的全部;您不需要“Bundler&Minifier”VS扩展,也不需要“BuildBundlerMinifier”包
尝试构建,您将有望在
输出中看到,根据您的bundleConfig.json
只需将BuildBundlerMinifier Nuget添加到项目中,并重新构建它选项1
从NuGet安装软件包,然后在构建项目时,将生成捆绑包
选项2
安装Visual Studio扩展
选项3
您可以使用任务运行程序(如Gulp、Grunt或Webpack)进行更高级的捆绑和缩小场景
您可以在ASP.NET Core中阅读My,它将教您以下内容:
- 捆绑和缩小简介
- ASP.NET核心中的捆绑和缩小策略
- 使用bundleconfig.json文件配置捆绑包
- 使用BuildBundlerMinizier包进行捆绑和缩小
- 基于环境的捆绑和缩小
- 使用Bundler和Minifier Visual Studio扩展
在2021,请考虑我对类似问题的回答:
TL;博士;-使用Mads Kristensen的WebOptimizer Core nuget包,用于.NET Core 3+和.NET 5+我正在使用15.7.1。我确实通过手动添加文件使其工作,但我想知道为什么他们会删除它。我想知道是否有什么东西正在取代它。谢谢,我注意到BundlerMinifier需要安装Nuget软件包才能工作。上周我一直在和LibMan玩,我不知道它处理捆绑和小型化,文档和示例都很简单。另外,它没有为15.7进行最终剪切,您必须安装15.8预览版才能使用。我理解删除的逻辑,但由于LibMan是从15.7中删除的,因此与模板之间会有一个差距,因为.NETCore2.1将在15.8发布之前进行RTM。尽管我非常喜欢ASP.NET Core,但客户端包管理存在太多的变化和混乱。尽管Nuget有其局限性,但它在客户端sde库管理方面已经足够好了。我希望能在ASP.NET Core上做更多的努力,这样我们就不用再去想Bower、npm、glup、grunt、webpack和LibMan的组合是什么了。我不知道它是从VS15.7中删掉的。我一直在使用VS的预览版本,所以我认为它已经发布到稳定频道了。另外,是的,NuGet并没有很好地设计用于客户端库管理。我一直在aspnetcore中使用Thread和webpack,它对我的团队非常有效。问题是ASP.NET Core 2.1和VS 2017 15.8(预览版)的当前状态,我们没有内置的客户端包管理、捆绑或缩小。对于一个来自ASP.NETMVC5的开发人员来说,使用默认模板并实现JavaScript文件是静态的是令人失望的,而且研究客户端库管理会带来时间的浪费。同样,我知道NuGet客户端有局限性,但它对于具有少量库的应用程序来说已经足够好了,但我希望能够进行依赖关系管理和集中更新管理。谢谢!这实际上是我发现的唯一有效的解决方案。