asp.net-core-mvc – 如何在多种环境下管理ASP.NET Core bundlec
在开发与生产环境中使用ASP.NET Core bundleconfig.json的最佳实践是什么?先前的bundler(
BundleCollection)会关注DEBUG编译器指令,而不是在调试时缩小脚本列表.
似乎新范例是< environment>测试ASPNETCORE_ENVIRONMENT值的HTML模板中的标记.虽然我没有看到将该环境变量合并到bundleconfig.json工作流程中的方法. 我看到的一种方法是在bundleconfig.json,缩小和非缩小版本中为每个捆绑输出维护2个列表,以便可以调试JavaScript.或者,我可以在开发< environment>中直接链接到非捆绑JavaScript.标记,然后在production / staging< 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助手指向一个将以调试模式传输文件的路径 可能解决方案 这是我解决方案的演变: https://gist.github.com/rupe120/512a9eb837383963f80fd9ef4984eb15 更新 我修改了我的解决方案,在路由定义中使用{* filePath},因此现在不需要对路径进行编码 更新 我认为这是我要做的最后一次重大更新.我用bundleconfig.json中的outputFileName值替换了静态基本路由字符串.所以现在有很多调试路由,因为有缩小的文件,不用担心名称冲突.另外,您可以在调试时看到哪些文件包含在哪个包中,我觉得这很酷. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-core-2.1 – 配置HttpClientFactory以使用当前请求
- 为什么这么多ASP.NET开发服务器实例?
- asp.net – 如何将aspx webform上的所有控件转换为只读等效
- asp.net – 链接到页面上的不同区域
- 像TransactionScope一样使用DbTransaction
- asp.net-mvc – Asp.net mvc 301从www.domain.com重定向到d
- asp.net-core – 如何在.NET Core 2.0中使用PrincipalConte
- asp.net – Fulltext Query String的全文查询参数无效
- asp.net – Autofac懒惰属性注入
- asp.net-mvc – 用于轻量级内容编辑的MVC 5自定义HtmlHelpe
- asp.net – Response.WriteFile和Response.Redir
- 将NUnit添加到ASP.NET MVC测试框架的选项
- asp.net-mvc – 在asp.net mvc中使用IDataErrorI
- asp.net-mvc – Angular ng-include cshtml页面
- asp.net-mvc – ASP.NET Web API错误:未找到与请
- 如何从ASP.NET MVC视图显示存储在数据库中的HTML
- asp.net-web-api – 在WebApi OData中为OData服务
- asp.net-web-api – 使用asp.net web api作为订阅
- asp.net – 在没有子类化页面的情况下全局覆盖Pa
- wcf – aspNetCompatibilityEnabled =“true”