当前位置:  开发笔记 > 编程语言 > 正文

查找所有程序集依赖项,Reflector样式

如何解决《查找所有程序集依赖项,Reflector样式》经验,为你挑选了2个好方法。

我正在使用Reflection.Emit动态生成程序集,然后保存它.它包含一个Type和一个静态Main()方法.

.NET足以自动引用所需的程序集.但是,在Main()中,有一个来自另一个程序集的方法的调用,它不会以标准方式引用.

执行程序集时,运行时会查找此程序集但无法找到它,这是一个问题.

Reflector可以检测到这一点并在"依赖"列表下显示这个额外的组件.如何使用Reflection API检索这些隐式依赖项?

谢谢



1> 小智..:

感谢回复人员,我设法解决了这个问题.

这是发生的事情:

AssemblyBuilder builder = ... //生成程序集

builder.GetReferencedAssemblies(); =>它不会返回对方法体中使用的程序集的引用,即使我已经调用了Save() - 它似乎只返回已经加载到内存中的程序集.

Assembly.ReflectionOnlyLoadFrom(filename).GetReferencedAssemblies()=>工作正常



2> Megacan..:

你有没有尝试过Assembly.GetReferencedAssemblies?它返回引用的程序集的AssemblyName.

推荐阅读
谢谢巷议
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有