2

如何通过clickonce更新应用程序时指定我的应用不覆盖客户端计算机上的app.config?使用clickonce部署时不要覆盖app.config

+0

我很困惑......你的应用程序部署后,客户编辑他们的机器上的配置文件?如果不是,你如何结束“客户......使用不同的连接字符串”? – codeConcussion 2009-02-06 14:49:28

+0

是的,其中一些编辑app.config – caiokf 2009-02-06 15:31:45

回答

0

您是否试图在更新期间保留设置?如果是这样,请查看应用程序和用户设置(在项目的属性中)。它们在每次更新期间都不会被覆盖。

+0

不是属性设置,app.config,连接字符串,ioc配置等... – caiokf 2009-02-06 02:47:34

1

将设置为不同的配置每个部署到诸如环境:

app.development.config
app.staging.config
app.production.config

保留所有设置通用这些在您的app.config

2

背景
我在问题的评论中询问用户是否在部署后手动编辑其机器上的app.config文件。原来的海报回应说他们正在这样做。

回答
它看起来像海报想要的ClickOnce最初部署的app.config文件,然后一起应用未来的更新部署。这是ClickOnce的错误使用。我不认为有一个简单的方法来做到这一点,即使有我会劝告它。如果将来你想为你的app.config文件添加一个新的设置呢?如果app.config不再在其机器上更新,用户将如何获得新的设置?

我会做的是将连接字符串存储为UserSettings。这正是用户设置的内容,因用户而异。最重要的是,我可能会为他们提供一个简单的表单来编辑这些设置。这让我感到紧张,让我的所有用户都在使用他们的安装文件。