我在Visual Studio 2015中获得了Settings-Designer生成的以下示例内容:
<configuration>
<applicationSettings>
<Test.Properties.Settings>
<setting name="LogFileFolder" serializeAs="String">
<value>logs</value>
</setting>
<setting name="sPluginsFolder" serializeAs="String">
<value>plugins</value>
</setting>
<setting name="sLangBaseName" serializeAs="String">
<value>Test.Resources.Language.Test</value>
</setting>
<setting name="ConfirmationExit" serializeAs="String">
<value>True</value>
</setting>
</Test.Properties.Settings>
</applicationSettings>
</configuration>
现在我想访问变量&#34; ConfirmationExit&#34;在我的代码中。首先,我尝试使用Properties.Settings.Default
,它运行良好,但我希望检索更通用的配置键,并提供可供任何其他.NET程序使用的ConfigurationService
。
我尝试使用ConfigurationManager
,但我没有获得不同设置/属性的值。如果我尝试过这样的话,我总是null
:
string test = ConfigurationManager.AppSettings["ConfirmationExit"];
如何使用Settings-Designer以编程方式读取和写入app.config文件中定义的属性/设置。感谢任何帮助;)
更新
也许我必须提一下,有一个用作XML元素的namspace(我认为这是由设计师生成的还是其他的东西?!):
<Test.Properties.Settings>
里面的
<applicationSettings>
另请注意: 这是一个像这样的项目结构:
1. Project_Common
2. Project_Main
|-- Project_Common
3. Project_Plugin1
|-- Project_Common
4. Project_Plugin2
|-- Project_Common
...
在Project_Common中应该有一个ConfigurationService,它可以检索所有应用程序的所有属性。也许构造函数必须有一个参数来注入设置或其他东西。
答案 0 :(得分:0)
string test = Properties.Settings.Default.ConfirmationExit;
来自MSDN:https://msdn.microsoft.com/en-us/library/a65txexh.aspx
答案 1 :(得分:0)
读: Settings.Default。{} propertyName的 所以在你的情况下,例如 Settings.Default.ConfirmationExit 读取ConfirmationExit-Value
设置它: Settings.Default.ConfirmationExit = false
写: Settings.Default.Save();