Loading assemblies and its dependencies我的应用程序在运行时从特定的子文件夹动态加载程序集。 这些程序集的编译依赖于其他程序集。 运行时尝试从应用程序目录中加载它们。 但是我想把它们放到modules目录中。 有没有办法告诉运行时dll在单独的子文件夹中? 我最近使用的一种不错的方法是为AppDomain的AssemblyResolve事件添加一个事件处理程序。
然后,在事件处理程序方法中,可以使用Assembly.Load,Assembly.LoadFrom替代之一加载尝试解析的程序集,然后从该方法返回它。 编辑: 根据您的其他信息,我认为使用以上技术,特别是自己自行解决对程序集的引用是唯一有效的方法,无需重组应用程序即可。它给您的是,可以在运行时由代码确定并加载CLR无法解析的每个程序集的位置。在可插拔体系结构和程序集引用完整性中,我在类似的情况下使用了此方法扫描工具。
您可以在清单文件中使用 http://msdn.microsoft.com/zh-CN/library/823z9h8w.aspx 例如。:
您可以使用应用程序配置文件中的
好吧,如果您知道运行时的特定文件夹,则可以使用Assembly.LoadFrom。 |