【发布时间】:2014-01-12 10:52:16
【问题描述】:
该项目有一个名为 MyNamespace.MyConfig 的自定义配置节类。该类存储在 C# 库 MyNamespace.MyAssembly.dll 中。
该项目还有一个控制台应用程序。客户端希望它的调用方式与 dll 相同,即 MyNamespace.MyAssembly.exe。
App.config 文件的定义如下:
<section name="myConfigSection" type="MyNamespace.MyConfig, MyNamespace.MyAssembly"/>
现在的问题是应用程序找不到 MyConfig 类,因为它在错误的程序集中查找 - 在 exe 文件中。
第一个想法是更具体地说明程序集的名称,因此 ConfigurationManager 知道它应该查看 dll 而不是 exe:
<section name="myConfigSection" type="MyNamespace.MyConfig, MyNamespace.MyAssembly.dll"/>
不幸的是,这无济于事,应用程序说,它找不到名称为 MyNamespace.MyAssembly.dll 的程序集。
使其工作的唯一方法是将应用程序程序集重命名为 MyNamespace.MyAssembly.Console,但客户端不同意这一点。
我如何告诉 ConfigurationManager 它应该在 MyNamespace.MyAssembly.dll 而不是 MyNamespace.MyAssembly.exe 中查找我的 MyNamespace.MyConfig 类?
【问题讨论】:
标签: .net app-config .net-assembly