编程语言
首页 > 编程语言> > 我的应用程序设置和settings.settings和configurationmanagers.appsettings

我的应用程序设置和settings.settings和configurationmanagers.appsettings

作者:互联网

好吧,我正在尝试学习有关如何实现应用程序和用户设置的所有不同选项,这一切都让我感到困惑.

使用创建< applicationSettings>的settings.settings设计器有什么区别?部分,并使用ConfigurationManager.AppSettings属性,该属性根据文档创建了一个< appSettings>部分?

将settings.settings设计器用于应用程序/用户设置的优点/缺点是什么?

如果我假设System.Configuration命名空间中的类(尤其是System.Configuration.Configuration类)主要用于创建自定义部分,我是否正确?

System.Configuration命名空间中的任何内容都可以用于创建或读取< applicationSettings>部分不使用settings.settings设计器?那只是一个自定义部分吗?

如您所见,我感到非常困惑.请告诉我您所知道的内容,我将继续尝试阅读本文档以理解.我的问题不是我无法完成需要完成的工作(我可以使用settings.settings来完成我需要做的事情)….问题实际上是在理解这种混乱并了解我的所有选择.

先感谢您.

更新:

Microsoft联机文档对此主题来说是可怕的(基本上不存在).我终于找到了

http://www.codeproject.com/Articles/19675/Cracking-the-Mysteries-of-NET-2-0-Configuration

这很好地解释了一切.自从我意识到配置文件被合并之后,它就变得更多了!

解决方法:

settings.settings和.config(app.config,web.config或其他任何东西)本质上都做相同的事情-也就是说,它们将值存储在XML文件中,该文件可以在会话之间持久化(settings.settings还会创建一个Settings.Designer.*文件中的public属性,以便VS设计器可以读取它).

* .config文件是较旧的处理方式,而settings.setttings是“较新的”处理方式.使用settings.settings,您还拥有一个方便的界面来添加对象(即直接从Visual Studio中而不是手动编辑XML).

此外,通过settings.settings,您可以获得用户范围和应用程序范围.用户范围在运行时是读写的,而我认为应用程序范围在运行时是只读的.

System.Configuration命名空间用于读取和写入* config文件.

处理* .config文件的一个不错的选择是使用Rick Strahl的configuration manager tool.它创建了整个* .config文件的漂亮的面向对象视图,允许对条目进行有效的加密等.

标签:app-config,settings-settings,c
来源: https://codeday.me/bug/20191101/1987151.html