在执行应用程序期间,我需要能够从具有相同标识的不同位置加载程序集。
我使用的是Assembly.LoadFrom,但此方法仅加载使用的第一个版本而不是其余版本。在MSDN上阅读后,我发现,对于这种情况,我需要使用“Assembly.LoadFile”。
我的问题是,在改变方法之后,我得到了FileNotFoundException
。怎么可能?它发生在我之前使用的相同路径上。当尝试使用程序集中定义的类型而不是LoadFile方法时,也会出现异常。
如果我浏览返回的程序集变量,则与内部类型相关的每个成员都会显示异常。例如DefinedTypes
,ExportedTypes
。探索这些异常我发现对于每种类型,相应的异常都是FileNotFoundException
,如:
无法加载文件或程序集'AssemblyName,Version = 1.0.0.0, Culture = neutral,PublicKeyToken = null'或其依赖项之一。该 系统找不到指定的文件。
非常感谢任何帮助。