微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

配置管理器抛出空异常

如何解决配置管理器抛出空异常

当我试图为我的 app.config 获取一些东西时,我遇到了一个问题。

所以我的代码很简单:

ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap()
{
    ExeConfigFilename = AppDomain.CurrentDomain.Setupinformation.ConfigurationFile,};

Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFileMap,ConfigurationUserLevel.None);
string value = config.AppSettings.Settings["test"].Value; // this is working
string value2 = System.Configuration.ConfigurationManager.AppSettings["test"]; // throw an exception

这里唯一棘手的是我的代码加载方式。 一个 C++ exe 在 AppDomain 中加载我的 C# 程序集并调用我的代码

我有这种文件结构

  • Application.exe (C++)
  • myDll.dll.config
  • myDll.dll

问题是一些像 NLog 这样的库,例如调用 ConfigurationManager.GetSection() 并且这会阻止记录器的初始化。

所以你对这个有什么想法吗?

预先感谢您的帮助;)

额外信息:

  • 网络 4.7.2
  • Windows 10

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。