ASP.NET Core MVC 2.1 中有什么东西取代了 bundleconfig.json 吗?
Has something replaced bundleconfig.json in ASP.NET Core MVC 2.1?
当我创建一个新的 ASP.NET MVC Core targeting 2.1 RC1 时,它不会创建用于捆绑和缩小的 bundleconfig.json 文件。如果我以 2.0.0 为目标,则会创建此文件。
这是一个示例,该解决方案包含一个针对 2.0 的新项目和另一个针对 2.1 的项目:
是否有东西取代了内置的捆绑和缩小,或者这只是 RC1 中的一个错误?
我遇到了同样的问题,我能够将现有的捆绑文件复制到项目中并且对我有用。您确实需要 follow this guidance 并安装 Bundle & Minifier 扩展……另外,请确保您使用的是 VS 15.7。
看起来捆绑文件确实没有包含在最新的项目模板中。
bundleconfig.json 已从 2.1 模板中删除,因为它依赖于 Microsoft 未创建或不支持的工具。参见 https://github.com/aspnet/templating/issues/326。
This file [bundleconfig.json] is for configuring the various incantations of the BundlerMinifier tool, which isn't actually shipped in the templates, or supported by Microsoft.
ASP.NET 核心团队已将 bundleconfig 替换为“libman”。右击项目 --> 添加 --> 客户端库并添加你需要的包
我刚刚在我的 ASP.NET Core MVC 项目上安装了 Bundler 和 Minifier。当我右键单击 Bundler and Minifier > Bundle File 时,它为我创建了一个 bundleconfig.json
,然后我可以将其设置为在每次构建时捆绑。将我的网络应用程序发布到 Azure 发送了正确的缩小 CSS 和 JS 文件。
一个缺点是你必须缩小每个文件,这对我来说并不重要,因为我有 2 个,但我想大多数真实的项目都会有更多。
请注意,这适用于 net core 2.2,不确定 2.1。另请注意,从 net core 3 开始,似乎 'local tools' 应该(必须?)改为使用:https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotnet-core-3-0#local-tools.
终于使用推荐的 BundlerMinifier.Core
软件包(截至撰写本文时)成功配置预构建捆绑。
将以下内容添加到您的 .csproj 文件中:
<!--
WARNING: don't update to latest version of BundlerMinifier.Core (as of 3.2.435)!
3.0.415 is the latest version that appears to work with this method of
automating bundling/minification
-->
<ItemGroup>
<PackageReference Include="BundlerMinifier.Core" Version="3.0.415" />
<DotNetCliToolReference Include="BundlerMinifier.Core" Version="3.0.415" />
</ItemGroup>
<Target Name="RestoreToolsAndBundle" BeforeTargets="Build">
<Exec Command="dotnet tool restore" />
<Exec Command="dotnet bundle" WorkingDirectory="$(ProjectDir)" />
</Target>
请注意,这应该是您需要的全部;你不应该需要 'Bundler & Minifier' VS 扩展,也不需要 'BuildBundlerMinifier' 包。
尝试构建,您会希望在 Output
中看到捆绑和缩小已完成,根据您的 bundleConfig.json
。
只需将 BuildBundlerMinifier Nuget 添加到项目中,然后重新构建它
此外,从 2021 年起,请在此处考虑我对类似 SO 问题的回答:
TL;DR; - 使用 Mads Kristensen 的 WebOptimizer Core nuget 包,用于 .NET Core 3+ 和 .NET 5+
当我创建一个新的 ASP.NET MVC Core targeting 2.1 RC1 时,它不会创建用于捆绑和缩小的 bundleconfig.json 文件。如果我以 2.0.0 为目标,则会创建此文件。
这是一个示例,该解决方案包含一个针对 2.0 的新项目和另一个针对 2.1 的项目:
是否有东西取代了内置的捆绑和缩小,或者这只是 RC1 中的一个错误?
我遇到了同样的问题,我能够将现有的捆绑文件复制到项目中并且对我有用。您确实需要 follow this guidance 并安装 Bundle & Minifier 扩展……另外,请确保您使用的是 VS 15.7。
看起来捆绑文件确实没有包含在最新的项目模板中。
bundleconfig.json 已从 2.1 模板中删除,因为它依赖于 Microsoft 未创建或不支持的工具。参见 https://github.com/aspnet/templating/issues/326。
This file [bundleconfig.json] is for configuring the various incantations of the BundlerMinifier tool, which isn't actually shipped in the templates, or supported by Microsoft.
ASP.NET 核心团队已将 bundleconfig 替换为“libman”。右击项目 --> 添加 --> 客户端库并添加你需要的包
我刚刚在我的 ASP.NET Core MVC 项目上安装了 Bundler 和 Minifier。当我右键单击 Bundler and Minifier > Bundle File 时,它为我创建了一个 bundleconfig.json
,然后我可以将其设置为在每次构建时捆绑。将我的网络应用程序发布到 Azure 发送了正确的缩小 CSS 和 JS 文件。
一个缺点是你必须缩小每个文件,这对我来说并不重要,因为我有 2 个,但我想大多数真实的项目都会有更多。
请注意,这适用于 net core 2.2,不确定 2.1。另请注意,从 net core 3 开始,似乎 'local tools' 应该(必须?)改为使用:https://docs.microsoft.com/en-us/dotnet/core/whats-new/dotnet-core-3-0#local-tools.
终于使用推荐的 BundlerMinifier.Core
软件包(截至撰写本文时)成功配置预构建捆绑。
将以下内容添加到您的 .csproj 文件中:
<!--
WARNING: don't update to latest version of BundlerMinifier.Core (as of 3.2.435)!
3.0.415 is the latest version that appears to work with this method of
automating bundling/minification
-->
<ItemGroup>
<PackageReference Include="BundlerMinifier.Core" Version="3.0.415" />
<DotNetCliToolReference Include="BundlerMinifier.Core" Version="3.0.415" />
</ItemGroup>
<Target Name="RestoreToolsAndBundle" BeforeTargets="Build">
<Exec Command="dotnet tool restore" />
<Exec Command="dotnet bundle" WorkingDirectory="$(ProjectDir)" />
</Target>
请注意,这应该是您需要的全部;你不应该需要 'Bundler & Minifier' VS 扩展,也不需要 'BuildBundlerMinifier' 包。
尝试构建,您会希望在 Output
中看到捆绑和缩小已完成,根据您的 bundleConfig.json
。
只需将 BuildBundlerMinifier Nuget 添加到项目中,然后重新构建它
此外,从 2021 年起,请在此处考虑我对类似 SO 问题的回答:
TL;DR; - 使用 Mads Kristensen 的 WebOptimizer Core nuget 包,用于 .NET Core 3+ 和 .NET 5+