本文用来总结.net反射机制中的常见问题,不求甚解,只为解决问题。
1、getType()方法返回null
要先得到程序集,再用程序集的的getType()方法
Type t1 Type.GetType("SKLibrary.SKCommand.OpenLedCommand");
//t1为null
Assembly ass = Assembly.Load("SKLibrary");
Type t2 = ass.GetType("SKLibrary.SKCommand.OpenLedCommand");
//t2不为null
2、同理 ,用反射动态构造对象也要先得到程序集,否则会得到null
Assembly asm = Assembly.Load(type.Assembly.FullName);
var a= asm.CreateInstance(type.FullName,true,BindingFlags.Default,null,new object[]{new LED(new ECU("Com1"),2,"led",1)},null,null);