【发布时间】:2013-01-12 00:16:44
【问题描述】:
我正在尝试找出更新现有应用程序的 app.config 文件以包含新应用程序设置而不覆盖预先存在的设置值的最佳做法。
所以,从头开始,我有一个项目,它通过 Visual Studio 安装项目内置到 MSI 中,并且该 MSI 用于安装应用程序。此应用程序已安装在大约 1000 多个位置。现在,在应用程序的新版本中,我们有一个新的应用程序设置来定义 Web 服务端点。但是,安装项目不会使用新设置部署新的 app.config,因为安装项目就像那样愚蠢,并且它们只会在 app.config 尚不存在或现有的 app.config 存在的情况下安装匹配创建和修改日期,以避免覆盖用户定义的配置。
现在,由于我无法覆盖 app.config,我想也许我会将 app.config 更改部署为单独的 XML 文件,并且在应用程序启动时,我将加载这个单独的 XML 文件,复制所有设置出来,与实际的 app.config 文件中的内容进行比较,缺少的任何内容我都会保存到 app.config 文件中。
但我在从外部 XML 文件加载配置并将其复制到 app.config 时遇到问题。我该怎么做呢?还有其他更好的方法来管理更新 app.config 文件吗?最佳做法是什么?
我对 Java 比较熟悉,这对于属性文件来说是一件非常简单的事情,但对于 .NET 配置文件来说似乎并不那么简单。
【问题讨论】:
标签: c# .net installation app-config