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

Cal*_*nus 14 c# settings

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

Saa*_*ail 21

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

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

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

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

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

MyProjectName.Properties.Settings.Default.SettingName

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

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

  • "上述做事方式已被弃用." - 不推荐使用System.Configuration.ConfigurationSettings.AppSettings,但它已被System.Configuration.ConfigurationManager.AppSettings取代.尚未弃用<appSettings>配置部分的使用. (10认同)