1
我通過反射裝載了一個.NET程序集,並且獲取它包含的所有類(此刻爲止)。在此之後,我試圖將類投給我100%肯定的類實現一個接口,但我收到此異常:無法轉換類型System.RuntimeType的對象類型MyInterface的通過反射導致類到基接口導致異常
MYDLL.DLL
public interface MyInterface
{
void MyMethod();
}
MyOtherDLL.dll
public class MyClass : MyInterface
{
public void MyMethod()
{
...
}
}
public class MyLoader
{
Assembly myAssembly = Assembly.LoadFile("MyDLL.dll");
IEnumerable<Type> types = extension.GetTypes().Where(x => x.IsClass);
foreach (Type type in types)
{
((MyInterface)type).MyMethod();
}
}
我已經去掉了所有不是n代碼具完整。這基本上就是我所做的。我在this中看到Andi回答的問題似乎與我的相同,但我無法修復它。
你是對的。我忘了創建類型的實例。謝謝! – Stefano