Assembly ass = Assembly.LoadFrom("TestReflex.dll");
Type[] mytypes = ass.GetTypes();
Type userinfo = null;
Console.WriteLine("列出程序集中的所有类型");
foreach (Type t in mytypes)
{
Console.WriteLine(t.Name);
if (t.Name == "UserInfo")
userinfo = t;
}
Console.WriteLine("列出UserInfo类中的方法:");
MethodInfo[] methodInfo = userinfo.GetMethods();
foreach (MethodInfo mi in methodInfo)
{
Console.WriteLine(mi.Name);
}
object obj = Activator.CreateInstance(userinfo);
//object objName = Activator.CreateInstance(userinfo, "kobe");
MethodInfo minfo = userinfo.GetMethod("Test", new Type[] { });
Console.WriteLine("调用Test方法");
minfo.Invoke(obj, null);
MethodInfo minfoStr = userinfo.GetMethod("Test", new Type[] { typeof(string) });
minfoStr.Invoke(obj, new object[] { "我是是" });
Console.ReadLine();