ConfigurationManager.AppSettings [“SettingName”] vs Properties.Settings.Default.SettingName何时应该使用每个?

时间:2009-12-16 12:04:39

标签: .net configuration appsettings

当我应该使用configurationManager.AppSettings或visual studio生成的强类型设置时应该指示什么?在大多数情况下,强类型的似乎更合适,但我认为可以使用ConfigurationManager方法动态地将设置添加到已部署的应用程序,但是在是否有任何指导条件下,每种情况都可以使用?

4 个答案:

答案 0 :(得分:11)

从我read,看来,AppSettings是一种较旧的做事方式。 MSDN docs 说明如果使用设置,可以在运行时写入用户设置。

我总是喜欢强类型设置,可以使用ConfigSection处理程序实现。

Pros and cons of appSettings vs applicationSettings (.NET app.config)

答案 1 :(得分:6)

最大的区别是生成的属性是只读的,因此使用AppSettings的主要原因是你想要编写它们(很少见)。

是的,您可以将AppSettings用于动态生成的设置,但这种情况也很少见。

答案 2 :(得分:2)

我建议松散类型的设置较旧,实际上只应用于向后兼容。

强类型设置更强大,因为它们是...强类型。

答案 3 :(得分:2)

使用Properties.Settings.Default.SettingName。但是只有在第一次无法使用时才应使用ConfigurationManager.AppSettings [“SettingName”]。