如何在外部引用中查找实现某些接口的类?

时间:2015-05-16 10:41:42

标签: c# visual-studio-2013 interface reference

我正在开展一个项目,我已经添加了一个外部参考。我用对象资源管理器搜索了这个引用。我找到了一个带有我想要使用的函数的接口。现在要实现一个接口,你需要一个具有接口所有功能的类。

我的问题是:是否可以在外部引用中找到一个可能已实现此接口的类?换句话说:有没有一种很好的方法来查看外部引用背后的代码?

我想要使用这个可能的类而不是创建一个新类。谢谢你的阅读!

1 个答案:

答案 0 :(得分:1)

你可以用反射来做到这一点:

interface MyInterface { }

public static void Main()
{
    Assembly asm = Assembly.Load("externalAssembly");

    var interfaces = asm.GetTypes().Where(t => t.IsSubclassOf(typeof(MyInterface)));

    foreach (var i in interfaces)
    {
        Console.WriteLine(String.Format("Found: {0}", i.Name));
    }
}