Gra*_*ark 3 .net reflection app-config
我正在尝试使用Reflection加载.NET程序集(使用该Assembly.LoadFrom方法),并在此程序集中实例化某些类型.
这一切似乎工作正常,但我试图实例化的一种类型访问其类型初始化程序中的程序集配置:它确实如此ConfigurationManager.GetSection(sectionName).然后程序集抛出异常,因为找不到配置节.
我正在加载的程序集的配置文件位于同一目录中,并且具有标准名称(即AssemblyName.dll.config),并且配置肯定具有所请求的部分.为什么找不到配置部分?加载程序集时还需要做些什么吗?
因为正在读取的配置文件是托管可执行文件的配置文件.因此,例如,如果您正在运行,Foo.exe您的配置文件中的代码应该被命名Foo.exe.config.在AssemblyName.dll.config从未使用过.如果您在网站上运行它,那么您应该使用web.config.
您可以尝试使用OpenMappedExeConfiguration方法:
var configFileMap = new ExeConfigurationFileMap();
configFileMap.ExeConfigFilename = "AssemblyName.dll.config";
var section = ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None).GetSection(sectionName);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2344 次 |
| 最近记录: |