繁体   English   中英

以编程方式更新各个站点的Web.config文件

[英]Updating Web.config file of various sites programatically

我正在准备一个工具(Web应用程序),使用它我应该能够更改托管在不同Web服务器上的各种Web应用程序的web.config文件。

我尝试使用WebConfigurationManager.OpenWebConfiguration(strings),但是它仅采用相对路径,但是如果我放置不同Web服务器web.config文件的共享位置,则它将失败。

MSDN参考: https : //msdn.microsoft.com/zh-cn/library/ms151456(v= vs.110).aspx

我认为,就我而言,我将无法使用WebConfigurationManager.OpenWebConfiguration。

唯一的选择是XDocument。

请提出建议。

在过去的项目中,我成功使用了基本文件和转换文件: https : //msdn.microsoft.com/zh-cn/library/vstudio/dd465318(v=vs.100).aspx

例如,在我们的web.config.base文件中有一个连接字符串,例如:

...
<connectionStrings>
    <!-- Connection String Changes will be lost when this file is
         regenerated - Please edit your transform file instead -->
    <add 
        name="MainConnectionString" 
        connectionString="(default connection string)" />

和web.config.transform文件中的条目,如下所示:

<connectionStrings>
<add name="MainConnectionString"
            connectionString="(system-specific connection string)"
            xdt:Transform="Replace"
            xdt:Locator="Match(name)"
                          />

在构建应用程序时,将重新创建web.config文件,用本地转换文件中定义的任何连接字符串替换默认字符串。 web.config.base文件已提交到我们的版本控制系统,而转换未提交。

因此,开发人员可以有一个转换文件连接到其本地数据库,qa服务器具有不同的转换文件,而演示服务器又具有不同的设置,所有这些操作的麻烦程度最小,因为大多数设置都保存在web.config.base中。文件,该文件随存储库一起传递,并且只需要维护从一个环境到另一个环境的连接字符串更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM