【发布时间】:2011-05-16 03:51:22
【问题描述】:
我正在编写一个由第三方应用程序加载的 DLL(FitNesse 框架的测试运行器,该 DLL 是一个测试夹具)。
DLL 有自己的 App.config 文件(比如 MyDll.dll.config),我可以告诉 FitNesse 加载该 App.config 文件。
但问题是:App.config 文件包含自定义配置部分处理程序,如下所示:
<configuration>
<configSections>
<sectionGroup name="myGroup">
<section name="MySection" type="MyNamespace.MyHandler.MySection, MyNamespace.MyHandler"/>
...
</sectionGroup>
</configSections>
...
</configuration>
每当读取 App.config 文件时,我都会收到一个异常,提示找不到 MyNamespace.MyHandler 程序集,尽管它与正在读取的 MyDll.dll.config 文件位于同一文件夹中:
System.TypeInitializationException: 类型初始化器 'MyNamespace.MyHandler.MySection' 抛出异常。 ---> System.Configuration.ConfigurationErrorsException: 创建时出错 配置节处理程序 myGroup/MySection:无法加载文件 或程序集“MyNamespace.MyHandler”或 它的依赖项之一。系统 找不到指定的文件
我可以看到系统在加载我的 DLL 的可执行文件所在的同一文件夹中查找此文件。但是,我不想将我的文件复制到这个第三方目录中,反之亦然。
有没有办法指定系统应该在哪里寻找 DLL 来解释 App.config 文件?通用解决方案或 FitNesse 特定解决方案都适合我。
非常感谢您的任何帮助!
【问题讨论】:
标签: c# .net dll app-config fitnesse