gpt4 book ai didi

c# - ConfigurationProperty 由于其保护级别而无法访问

转载 作者:可可西里 更新时间:2023-11-01 08:53:27 35 4
gpt4 key购买 nike

我想在程序中读/写(并保存)应用程序的配置文件

app.config 是这样的:

<configuration>
<configSections>
<section name="AdWordsApi" type="System.Configuration.DictionarySectionHandler" requirePermission="false"/>
</configSections>
<AdWordsApi>
<add key="LogPath" value=".\Logs\"/>
...
</AdWordsApi>
</configuration>

当我使用 ConfigurationManager.GetSection 读取 app.config 时,它起作用了:

var adwords_section = (System.Collections.Hashtable) System.Configuration.ConfigurationManager.GetSection("AdWordsApi");
Console.WriteLine((string)adwords_section["LogPath"]);

但是当我使用ConfigurationManager.OpenExeConfiguration时:

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
ConfigurationSection section = config.GetSection("AdWordsApi");
Console.WriteLine(section["LogPath"]);

我总是得到这个错误:

'System.Configuration.ConfigurationElement.this[System.Configuration.ConfigurationProperty]' is inaccessible due to its protection level

但是据我所知,GetSection不能在程序运行时保存配置,就像我开始说的:我想在程序运行时保存配置,所以我必须使用OpenExeConfiguration .

我搜索了很长时间,我发现是使用 AppSettings,但我使用的是自定义部分..

谁能解释为什么会出现“ConfigurationProperty is inaccessible”错误?谢谢

编辑:

我已将 SystemSystem.Configurationcopy local 设置为 true

最佳答案

string key_value = refconfig.AppSettings.Settings["key_name"].Value;

关于c# - ConfigurationProperty 由于其保护级别而无法访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8587614/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com