Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将转换后的web.$configuration.config文件添加到项目中_C#_.net_Msbuild_Web.config Transform_Pre Build Event - Fatal编程技术网

C# 如何将转换后的web.$configuration.config文件添加到项目中

C# 如何将转换后的web.$configuration.config文件添加到项目中,c#,.net,msbuild,web.config-transform,pre-build-event,C#,.net,Msbuild,Web.config Transform,Pre Build Event,我有一个web服务项目,其中我有一个主web.config文件,然后是不同的特定于环境的文件,如web.Staging.config/web.QE.config等。现在,我要做的是:向我的项目添加预构建事件,将特定于配置的配置文件复制到主web.config文件,但问题是,它复制它而不进行转换,因此产生如下结果: <add key="somekey" value="Development" xdt:Transform="Replace" xdt:Locator="Match(key)"/&

我有一个web服务项目,其中我有一个主web.config文件,然后是不同的特定于环境的文件,如web.Staging.config/web.QE.config等。现在,我要做的是:向我的项目添加预构建事件,将特定于配置的配置文件复制到主web.config文件,但问题是,它复制它而不进行转换,因此产生如下结果:

<add key="somekey" value="Development" xdt:Transform="Replace" xdt:Locator="Match(key)"/>


我的问题是,在构建项目时,有没有一种方法可以使转换后的配置文件随时准备好被复制?

您可以使用SlowCheetah来为您进行转换。这与多环境QA、UAT等一起工作。这也提供了一个nuget包

2017年15.8.4的最新功能具有管理机密的功能。值得一看

多个配置的要点当然是在构建之前选择适当的配置,构建过程会将特定于配置的配置文件中的转换应用到“main”web.config文件?该文件会根据构建配置进行转换。因此,如果您在调试中,调试转换将运行。问题是,它在发布配置中运行良好,但当我在bambooI中使用QE或其他定制构建配置时,它不会转换。令人惊讶的是,截至VS2017,我们仍然需要慢速Cheetah,但遗憾的是,它仍然是一个强大的工具,实际上是一个必需的附加组件。