Type t = typeof(f_more);
MethodInfo[] miArr = t.GetMethods();//
object m = Activator.CreateInstance(t);
String[] param = new String[]{"aa", "bb"};
foreach (MethodInfo o in miArr)
{
if (o.Name == "gethtm")//方法名 设为公告方法
{
int a = 4;
object [] arry=new object[4]{a, b, c,d};
string re = o.Invoke(m,arry).ToString();//
Response.Write(re.ToString());
}
}
反射调用方法
Assembly assem = Assembly.GetExecutingAssembly();
object o=assem.CreateInstance("类名字");
MethodInfo m = o.GetType().GetMethod("方法名");
m.Invoke(o, null);
执行属性
MethodInfo m = o.GetType().GetProperty("GetObj").GetGetMethod();
m.Invoke(o, null)
静态类的反射
BindingFlags bf = BindingFlags.CreateInstance | BindingFlags.NonPublic | BindingFlags.Instance;
Assembly a = Assembly.GetExecutingAssembly();
Type t = a.GetType("类名");
t.InvokeMember("GetObj", bf, null, null, null)
返回一个实例对象的方法
Assembly a = Assembly.GetExecutingAssembly();
Type t = a.GetType("类");
(t.GetProperty("GetObj").GetGetMethod().Invoke("GetObj", null) as BaseForm).Show(this.dockPanel1);