反射通常有以下几种方法:
using System.Reflection;
1、
Assembly assembly = Assembly.Load("A") ;A为程序集名称
Type t= assembly.GetType("A.B.C",true,true) ;A.B.C为类的全称
//动态创建实例
object obj = Activator.CreateInstance (t);
2、
System.Reflection.Assembly ass = System.Reflection.Assembly.Load(nameSpace);
object obj = ass.CreateInstance(className);
Iobject op = (Iobject)obj;//Iobject为抽象类,是className的父类
3、
using System.Reflection;
Assembly assembly = Assembly.LoadFrom("xxx.dll的路径");
Type[] aa = a.GetTypes();
foreach(Type t in aa)
{
if(t.FullName == "a.b.c")
{
object o = Activator.CreateInstance(t);
}
}
4、
使用System.Type.GetType