如何更改的web.config文件使用转换语法设置?(How do I change an web.

2019-08-18 02:41发布

我有存储在,我想时,该网站发布改变我的web.config文件中的值。 我想从测试到LIVE改变。

<appSettings>
    <add key="RequestMode" value="TEST" />
    // other keys here
</appSettings>

这可能使用的web.config转型语法? 如果是这样,怎么样?

谢谢。

Answer 1:

是的,这是可能的转型语法。 这种变换应该做的伎俩:

<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
  <appSettings>
    <add key="RequestMode" value="LIVE" xdt:Transform="SetAttributes" xdt:Locator="Match(key)"/>
  </appSettings>
</configuration>


Answer 2:

这是可能的了使用Visual Studio 2010中唯一需要注意的盒子的是,当你使用其中的发布设施这个过程是从Visual Studio中运行。 你不会得到MSBuild中获取这一转变(这阻碍了自动化生成)的能力。

<appSettings xdt:Transform="Replace">  <add key="ProdKeyA" value="ProdValA"/>  <add key="ProdKeyB" value="ProdValB"/>  <add key="ProdKeyC" value="ProdValC"/></appSettings>

来源: Web.Config中转换VS 2010

此外,还要确保您的Web.Config.XXXX穿越 - 文件的生成定义相匹配。 例如,调试和发布默认支持,所以你需要有一个Web.Config.Release在释放模式发布时调整Web.Config中。



Answer 3:

我发现下面的代码http://mundrisoft.com/tech-bytes/web-config-transformation-for-project-deployment/ ,这是工作:

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
  <connectionStrings>
    <add name="MyDB" 
      connectionString="ReleaseSQLServer" 
      xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
  </connectionStrings>
</configuration


Answer 4:

您也可以使用CTT工具进行网络改造CTT网站然后,您可以使用PowerShell可以将web配置发布您的文件,在部署之前后(保持一个转换文件),然后简单地部署过程中更改名称



文章来源: How do I change an web.config setting using transformation syntax?