【发布时间】:2009-04-01 22:10:21
【问题描述】:
我遇到了这个显然并不罕见的问题 --
我在Assembly A中有一个接口。
我正在动态加载程序集 B,并尝试将其中的对象从程序集 A 投射到我的界面中。
失败并出现 InvalidCastException。
我开始明白为什么 - 程序集 A 中的一个类和程序集 B 中的一个类,即使具有相同的名称和相同的代码,也不是同一个东西,不能相互转换。
我的问题是:有解决办法吗?有什么办法可以使这两种类型兼容,还是我需要在程序集 B 中复制我的接口并将对象转换为那个?
我正在使用 Assembly.LoadFrom 加载程序集 B - 是否有其他方法可以使它们类型兼容?
我不可能是第一个遇到这个问题的人。我正在尝试做的似乎是插件架构中相当常见的任务。
【问题讨论】:
标签: .net assemblies