我有一个需要在我的项目中实现接口的需求,该接口存在于第三方DLL中。我正在使用反射加载此DLL。可能吗?

class MyClass : I3rdPartyInterface
{
    //implementing interface
}


在这里,I3rdPartyInterface是我的第三方DLL中存在的接口。
安装了我的软件产品的客户端计算机上可能存在或没有该DLL。如果存在,那么我应该实现接口方法。

最佳答案

最好的选择是编写一个引用该dll并实现该接口的新项目-并在运行时加载该项目。

新的dll在外部dll类型和您的应用程序类型之间“转换”-这样,您的应用程序和外部dll之间就没有直接的依赖关系。

您可以在运行时生成和编译代码,但在这种情况下,创建包装器/翻译器dll更简单

09-10 08:23
查看更多