从不同文件夹中的程序集加载自定义配置节

时间:2011-03-14 21:41:57

标签: c#

我有一个C#应用程序,可以从不同文件夹中的程序集加载自定义配置部分。

例如:

AppBase:C:\ Code

程序集文件夹:C:\ Lib \ My.Core.dll

我有错误说“系统无法找到特定文件”。据我所知,这是由不同的文件夹引起的。我可以用绝对路径引用它吗?

这是我的配置文件:

<section name="regional" type="My.Core.RegionalSection, My.Core" />

我能说得像

<section name="regional" type="My.Core.RegionalSection, C:\Lib\My.Core" />

1 个答案:

答案 0 :(得分:2)

不,您无法在类型说明中指定路径。 CLR在GAC或包含启动EXE的目录中查找程序集。您可以使用.config文件中的<probing>元素让它在子目录中查找。与启动EXE目录完全无关的其他路径需要实现AppDomain.AssemblyResolve事件。

在与EXE相同的目录中部署DLL是明智之举。它避免了DLL Hell。