插件程序可以用C#2.0或3.0编码,而不是4.0,所以我想在插件dll中调用一个用C#4.0编码的dll。
我已经安装了两个框架。
我该怎么做?感谢。
我尝试了参考和COM,两者都失败了。
答案 0 :(得分:0)
可能需要创建新的AppDomain并将插件下载到其中(请注意,您需要订阅参考分辨率的事件)。另一种方法是另一个进程和进程间通信。
答案 1 :(得分:0)
CLR不向前兼容。
看看link
DLL可能会暴露使用3.0 / 3.5 / 4.0功能的接口,因此调用者需要知道使用它们的功能
唯一的方法是使用不安全的代码或真正的COM注册作为中间dll和实际4.0 dll之间的接口来包装它,但我同意如果你想拥有2.0个调用者,通过WCF提供干净的web服务是更好的解决方案一个4.0 dll
另请注意,您不需要单独安装CLR 2.0 - 安装4.0时将隐式安装它。