ApplicationSettings部分和AppSettings部分之间有什么区别?

有人可以向我解释App.Config文件中AppSettings和ApplicationSettings部分之间的区别。 为什么有两个不同的部分显然做同样的事情?

我相信app.config / web.config中的集合允许您将设置存储在键值对中,并通过System.Configuration API访问,如下所示:

string setting = System.Configuration.ConfigurationManager.AppSettings["settingName"];

设置只能作为字符串值存储和检索。
它们也可以通过System.Configuration.ConfigurationSettings访问,但这种方式已被弃用。

配置文件中的集合以强类型方式存储您的设置,还允许您以强类型方式访问这些设置。 VS会自动为您生成包装类,位于项目的Properties文件夹中的settings.settings文件中。 要将设置文件添加到项目中,请右键单击项目,然后单击“ 属性” ,然后打开“ 设置”选项卡。 然后单击链接以添加新的设置文件。 VS会自动为您生成一个。 就这么简单。

您通常按如下方式访问您的设置:

MyProjectName.Properties.Settings.Default.SettingName

请注意访问两个集合的方式不同。

存储设置的第二种(非弃用)方式是更好的方式,并提供了很大的灵活性和function。 虽然需要一些学习 – 但值得付出努力。

http://kevinskorner.net/blog/post/2008/03/27/applicationSettings-vs-appSettings.aspx

应用程序设置为我们提供了更多控制,最重要的是,智能化。

这与我们都喜欢的向后兼容性有关。 ApplicationSettings是较新的构造。

使用较新的ConfigurationManager和WebConfigurationManager类来获取您的设置并执行此操作您需要一个参考,因此System.configuration而不是System.Configuration :)。

有一次它开始变得有点傻了没有它。