我在一家软件公司的QA工作。
我们有大约六个不同的网络应用程序,每个网站应用程序可能需要在任何给定的网站上添加一些添加到 web.config 文件的自定义设置。
这些范围包括应用程序连接到的Oracle数据库/架构,以及要缓存的搜索结果的数量,以及在网页上对项目进行排序时使用的层次结构。
我们利用Microsoft的Deploy软件包,在客户端站点上安装/更新新版本。
当我们发布新版本时,其中一些自定义设置可能已添加到给定的Web应用程序的 web.config 文件中,或者从其中删除,但使用Deploy导入新版本旧版本的顶部将破坏可能已经进行的任何自定义。
有一些方法可以手动处理,例如通过旧的和新的 web.config 文件的纯文本比较进行合并,但这些文件很麻烦,容易出现人为错误。
我正在阅读transformations并认为它们可能有用。
还有use external files (tip #8)的能力,这似乎是一种很好的方式。
我们的程序员是否应该为此 web.config 文件提供某种半自动合并功能? Deploy包是否以某种方式提供了这个?
我们是否应该使用外部配置文件作为最佳做法?
在每个站点自定义此 web.config 文件的概念是否存在根本性的缺陷,以至于整个事情需要重新考虑?
答案 0 :(得分:2)
Microsoft提供Web.config转换作为事实上的方法。您可以在Visual Studio和Web项目中创建不同的部署配置。然后,当您使用该特定配置构建或构建服务器构建时,将转换web.config以包含您要查看的设置。