使用Reflection c#实现接口

时间:2015-07-30 03:55:03

标签: c# .net reflection

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

class MyClass : I3rdPartyInterface
{
    //implementing interface   
}

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

1 个答案:

答案 0 :(得分:3)

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

新的dll"翻译"在外部dll类型和应用程序的类型之间 - 这样你的应用程序和外部dll之间没有直接的依赖关系。

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