我有存储在,我想时,该网站发布改变我的web.config文件中的值。 我想从测试到LIVE改变。
<appSettings>
<add key="RequestMode" value="TEST" />
// other keys here
</appSettings>
这可能使用的web.config转型语法? 如果是这样,怎么样?
谢谢。
我有存储在,我想时,该网站发布改变我的web.config文件中的值。 我想从测试到LIVE改变。
<appSettings>
<add key="RequestMode" value="TEST" />
// other keys here
</appSettings>
这可能使用的web.config转型语法? 如果是这样,怎么样?
谢谢。
是的,这是可能的转型语法。 这种变换应该做的伎俩:
<?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>
这是可能的了使用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中。
我发现下面的代码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
您也可以使用CTT工具进行网络改造CTT网站然后,您可以使用PowerShell可以将web配置发布您的文件,在部署之前后(保持一个转换文件),然后简单地部署过程中更改名称