我对用 C# (.NET 3.0) 编写的应用程序的升级部署包括简单地将旧的 .exe 替换为新的 .exe。由于旧版本当前可供某些客户使用,因此我只需将旧版本重命名为 blahblah.exe.old,然后将新版本复制到同一文件夹即可。当用户再次打开应用程序时,会加载新的应用程序。
问题是,每次部署新版本时,用户范围设置总是恢复为默认值。任何帮助将不胜感激。
谢谢
最佳答案
可能的重复:Settings.Settings file keeps getting reset
我对该问题的回答适用于此:
我相信 Settings.settings 文件是根据当前版本号保存的,基本上作为一项“功能”,其中设置不会在计算机上同一程序的不同版本之间保存。假设您在编译时自动增加版本号(AssemblyInfo.cs 中的 1.0.*),则每次编译新版本时都会重置您的设置。
要纠正此问题,最好的方法是将您自己的设置文件序列化到应用程序数据目录。
另请注意答案中的另一篇文章,其中指出可以调用 Properties.Settings.Value.Upgrade();
来升级以前版本的设置。
关于c# - 每次部署后,用户设置都会重置为默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1295427/