通过app.config为Mono Cecil解析程序集

时间:2013-10-10 11:55:50

标签: .net reflection mono .net-assembly mono.cecil

我编写了一个使用Mono Cecil分析应用程序代码库各个部分的工具;它依赖于能够解析TypeReference(涉及查找包含TypeDefinition的程序集)。如果我提供一个可以找到DLL的路径列表,这可以正常工作。

但是,我们的应用程序的依赖关系有点复杂,我们有一个app.config,它大量使用<bindingRedirect><codeBase>元素来指导.NET的程序集解析器。例如,我们有一个由DLL版本组织的目录结构,我们将旧版本号重定向到最新版本,我们可以同时加载两个版本的DLL(当我们有更改时,我们可以运行1.x和同一过程中的2.x版本。)

我希望我的基于Cecil的工具遵守相同的规则。有没有办法可以利用现有的app.config?

  • 我是否可以要求.NET将程序集名称转换为DLL路径而不实际加载程序集? (这是一个报告已损坏的DLL的工具,因此程序集可能无法成功加载。)
  • 或者,是否已经有.NET用于在运行时定位程序集的算法的开源实现?

0 个答案:

没有答案