你是对的,你可以读取一个dll的配置文件。我为此苦苦挣扎了一天,直到我发现我的配置文件是问题所在。请参阅下面的代码。它能够运行。
ExeConfigurationFileMap map = new ExeConfigurationFileMap();
map.ExeConfigFilename = Assembly.GetExecutingAssembly().Location + ".config";
Configuration libConfig = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);
AppSettingsSection section = (libConfig.GetSection("appSettings") as AppSettingsSection);
Console.WriteLine(section.Settings["dnd_shortcodes"].Value);
我Plugin1.dll.config
看起来如下;
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="cmd_location" value="http://..."/>
<add key="dnd_shortcodes" value="142,145,146,157,165,167,168,171,173,176,178,404,40"/>
</appSettings>
</configuration>
我发现我的配置文件缺少<appSettings>
标签,所以环顾四周,您的问题可能有所不同,但与我的相差不远。