gpt4 book ai didi

asp.net-core-mvc - 如何为多个环境管理 ASP.NET Core bundleconfig.json?

转载 作者:行者123 更新时间:2023-12-04 15:07:12 24 4
gpt4 key购买 nike

使用 ASP.NET Core 的最佳实践是什么 bundleconfig.json开发环境还是生产环境?先前的捆绑程序 ( BundleCollection ) 会注意 DEBUG 编译器指令,而不是在调试时缩小脚本列表。

新范式似乎是 <environment>测试 ASPNETCORE_ENVIRONMENT 的 HTML 模板中的标签值(value)。虽然我没有看到将该环境变量合并到 bundleconfig.json 中的方法。工作流程。

我看到的一种方法是为 bundleconfig.json 中的每个包输出维护 2 个列表。 、缩小版和非缩小版,以便可以调试 JavaScript。或者,我可以在开发中放置指向未捆绑 JavaScript 的直接链接 <environment>标记,然后在生产/暂存 <environment> 中引用捆绑和缩小的版本标签。

无论哪种方式,都需要维护 2 个 JavaScript 文件列表(所有这些都适用于 CSS 文件)。这对我来说似乎是倒退了一步,在此之前您只需要维护一个源文件列表,而 BundleCollection 只会在适当的时候缩小。

我是否在这里遗漏了什么,或者我需要更进一步研究 Gulp 以便能够处理不同的环境?

最佳答案

我想我找到了答案。我正要创建一个 HTML 帮助程序来阅读 bundleconfig.json对于开发环境,但似乎我不是第一个认为这是个好主意的人。请注意,.NET Core 实现链接到页面底部

https://github.com/madskristensen/BundlerMinifier/wiki/Unbundling-scripts-for-debugging

编辑

对于 .NET Core 实现,引用 bundleconfig.json期望它位于/Configs 文件夹中,这在您的项目中可能是也可能不是。对我来说,我只是将它放在项目的根目录中。

编辑

因此,如果源文件在 wwwroot 文件夹之外,这将不起作用。将文件放在 wwwroot 文件夹之外是完全合理的,所以我正在研究让 html helper 指向一个路径,该路径将在 Debug模式下流式传输文件

可能的解决方案

这是我对解决方案的演变:

https://gist.github.com/rupe120/512a9eb837383963f80fd9ef4984eb15

更新

我修改了我的解决方案以使用 {*filePath}在路由定义中,所以现在不需要对路径进行编码

更新

我想这是我要做的最后一次重大更新。我用 outputFileName 替换了静态基本路由字符串来自 bundleconfig.json 的值.所以现在有尽可能多的调试路线,因为有缩小的文件,而且不用担心名称冲突。此外,您可以在调试时看到哪些文件包含在哪个包中,我认为这很酷。

关于asp.net-core-mvc - 如何为多个环境管理 ASP.NET Core bundleconfig.json?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48097137/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com