我正在开发一个插件系统,可以加载包含在指定文件夹中的.dll文件。然后,我使用反射来加载程序集,遍历它们包含的类型,并标识实现我的IPlugin
接口的任何类型。
我正在使用类似于以下代码的代码检查:
foreach(Type t in myTypes )
{
if( typeof(IPlugin).IsAssignableFrom(t) )
{
...
}
}
由于某些原因,IsAssignableFrom()在应该返回true的时候却一直返回false。我曾尝试通过显式地给t
一个应该传递的类型来替换它,它工作得很好,但由于某些原因,它不能处理从加载的程序集返回的类型。让事情变得更奇怪的是,代码在我同事的机器上运行得很好,但在我的机器上就不行了。
有没有人知道任何可能导致这种行为的事情?
谢谢
https://stackoverflow.com/questions/345413
复制相似问题