gpt4 book ai didi

asp.net - 使用 web 部署参数时使用 web.config 中的默认值

转载 作者:行者123 更新时间:2023-12-03 17:51:00 24 4
gpt4 key购买 nike

我试图通过限制使用多个环境的开销来改善我们公司的开发和部署体验。我们目前有 3 个环境:调试、测试、发布。这意味着我有多个配置文件:web.Debug.config , web.Test.config , web.Release.config .

我们正在使用 NuGet 包来部署内部开发的库。库本身负责它使用的配置值。使用 NuGet transformation files 很容易做到这一点.因此,将包添加到项目时,正确的环境转换文件将应用于正确的 .config 文件。使用 SlowCheetah 和对 csproj 文件的一些手动修改,效果很好。在开发过程中切换构建配置时,使用正确的 .config 文件;创建部署包时,它还使用正确的 .config 文件。

当我想使用 parameters.xml 时出现问题文件以允许发布管理器在部署时更改配置值。 ( How to: Use Web Deploy Parameters in a Web Deployment Package ) 他有时想建立一个单独的环境来做能够测试某些事情,同时不干扰现有的测试环境。

理论上,使用参数文件是完美的解决方案。实际上,当没有传递任何值时,参数文件似乎无法使用来自相应配置文件的配置值。这意味着,当我们提供参数文件时,我们必须为每个可能的替换值定义实际的默认值。当然,这使事情变得复杂,因为它们只是所有配置的一个参数文件。部署时始终指定每个配置值也不是首选,因为这意味着,当配置值更改时,我们必须在两个地方更改它:NuGet 包和部署到默认环境的部署脚本。

解决我们问题的最简单方法是什么?如果没有填写任何值,我们如何告诉 Web 部署向导使用创建部署包时生成的 .config 文件中的默认值?

最佳答案

我也一直在努力解决这个问题,我能想出的最佳解决方案是通过 .pubxml 文件为每个部署添加参数,不幸的是,这意味着重复工作(当然有人有更好的方法?)

关于asp.net - 使用 web 部署参数时使用 web.config 中的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21390947/

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