我有一个要求,我需要在我的项目中实现一个接口,该接口存在于第三部分DLL中。我正在使用反射加载此DLL。可能吗?
class MyClass : I3rdPartyInterface
{
//implementing interface
}
这里,I3rdPartyInterface
是我的第三方DLL中存在的界面。
此DLL可能或可能不会出现在我的软件产品安装的客户端计算机上。如果它存在,那么我应该实现接口方法。
答案 0 :(得分:3)
您最好的选择是编写一个引用该DLL并实现该接口的新项目 - 并在运行时加载该项目。
新的dll"翻译"在外部dll类型和应用程序的类型之间 - 这样你的应用程序和外部dll之间没有直接的依赖关系。
您可以在运行时生成和编译代码,但对于这种情况,创建包装器/转换器dll更简单