C#什么是设置的替代品

时间:2015-05-14 12:14:46

标签: c# class persistence settings

使用Settings.Default.Save()时,我想保存多次运行的设置,与C#中的设置基本相同。

是否有一些替代方法可以在类或类似的东西中存储变量?

2 个答案:

答案 0 :(得分:5)

这里有很多选择。

  • 将设置保存到Windows注册表。
  • 将设置保存到文本文件。
  • 将设置保存在数据库中。

以下是我通常如何保存应用程序设置:

  • 创建一个Settings类,其设置为我要保存的属性。
  • 创建LoadSettings()SaveSettings()等功能。
  • SaveSettings负责创建设置实例,然后将其序列化并保存。我使用Newtonsoft.JSON序列化为JSON。
  • LoadSettings读取包含已保存数据的文件,对其进行反序列化,然后使用它填充UI。

如果您实现了类似的功能,您甚至可以使用自定义文件扩展名保存设置文件,然后将该扩展名与您的应用程序相关联。

这样,在main方法中,您可以检查要加载的设置文件。

当我必须允许多个应用程序实例时,我通常会使用这种方法,因为<namespace>.Properties.Settings在这种情况下不会删除它。

答案 1 :(得分:2)

是的,您可以通过多种方式存储数据。

例如:

  1. 应用程序配置

  2. 对象序列化 - https://msdn.microsoft.com/en-us/library/ms233843.aspx

  3. 其他一些外部文件,如XML,Json - http://www.w3.org/XML/ http://json.org/

  4. 数据库