Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# .NET应用程序/用户设置问题_C#_.net_Application Settings_Settings - Fatal编程技术网

C# .NET应用程序/用户设置问题

C# .NET应用程序/用户设置问题,c#,.net,application-settings,settings,C#,.net,Application Settings,Settings,有人能给我解释一下应用程序和用户设置,以及它们之间的区别吗?我有一个C#应用程序,只有一个人会使用。用户可以在程序中设置一些首选项,我使用用户范围的设置实现了这些首选项。我的印象是,用户范围内的设置可以在运行时读取和写入,它们就是这样。但他们并没有坚持下去。一旦应用程序被关闭并重新打开,poof,所有用户的设置都会消失 应用程序设置似乎更适合我正在做的事情,只是它们不能在运行时被操纵 所以 问题#1:用户范围的设置是否应该持续 问题#2:用户和应用程序范围之间的差异是否是应用程序在运行时不能更改

有人能给我解释一下应用程序和用户设置,以及它们之间的区别吗?我有一个C#应用程序,只有一个人会使用。用户可以在程序中设置一些首选项,我使用用户范围的设置实现了这些首选项。我的印象是,用户范围内的设置可以在运行时读取和写入,它们就是这样。但他们并没有坚持下去。一旦应用程序被关闭并重新打开,poof,所有用户的设置都会消失

应用程序设置似乎更适合我正在做的事情,只是它们不能在运行时被操纵

所以

问题#1:用户范围的设置是否应该持续

问题#2:用户和应用程序范围之间的差异是否是应用程序在运行时不能更改,但用户可以更改


问题#3:如果我不能使用设置,或者在这种情况下不应该使用设置,那么保存首选项的其他建议是什么?

有一些很好的信息

  • 对。一定要在某个时候对它们调用
    Save()
    函数!通常使用
    设置.Default.Save()
  • 是的,但不是。我相信从技术上讲,您可以在运行时更改和持久化应用程序设置,但这并不是真的,因为大多数部署机制都会阻止这一点,因为您的安装文件夹应该是只读的
  • 不适用。请使用设置!你在正确的轨道上。如果您发现需要持久保存大量信息,那么您可能需要查看更丰富的数据存储—例如XML、SQL、SQL-CE等

  • 听起来像是一些微软认证测试问题;-)你看,我没有打电话救你。呸!我可以在应用程序关闭前保存,还是在进行更改时必须保存?也许一个onclose事件可以保存设置?我会保存OnChange,以防你的应用程序崩溃。与VS.NET不同,VS.NET崩溃时不保存我的设置。cough.CODe-是的,您可以使用表单的关闭事件保存设置。别忘了保存这些设置!类似于Properties.Settings.Default.Save()的内容;我倾向于将我的用户设置包装为与它们相关的类的(静态)属性。这样,在setter中,它可以立即调用Save,但也可以在需要时进行验证。