1

背景

我在一家软件公司从事 QA 工作。

我们有大约六种不同的 Web 应用程序,在任何给定站点上,每个应用程序都可能需要将一些自定义设置添加到其web.config文件中。

这些范围可以从应用程序连接到的 Oracle 数据库/模式,到要缓存的搜索结果数量,到在网页上对项目进行排序时使用的层次结构。

我们利用 Microsoft 的 Deploy 包,在客户端站点上安装/更新新版本。

当我们发布新版本时,其中一些自定义设置可能已添加到给定 Web 应用程序的web.config文件中或从其中删除,但使用 Deploy 在旧版本之上导入新版本将破坏任何自定义设置可能已经做出来了。

备择方案

有一些手动处理的方法,例如通过对新旧web.config文件的纯文本比较进行合并,但这些方法很麻烦并且容易出现人为错误。

我正在阅读有关转换的内容,并认为它们可能会有用。

还有使用外部文件的能力(技巧#8),这似乎是一个不错的方法。

改进?

我们的程序员是否应该为此web.config文件提供某种半自动合并工具?Deploy 包是否以某种方式提供了这个?

作为最佳实践,我们是否应该使用外部配置文件?

在每个站点自定义此web.config文件的概念是否存在根本缺陷,以至于需要重新考虑整个事情?

4

1 回答 1

2

Microsoft 提供 Web.config 转换作为执行此操作的实际方式。您可以在 Visual Studio 和 Web 项目中创建不同的部署配置。然后,当您使用该特定配置构建或构建服务器时,web.config 将转换为包含您想要查看的设置。

在此处查看有关 web.config 转换的更多信息

于 2013-01-14T02:13:42.547 回答