1 创建用于反射使用的DLL 新建一个C#类库项目,拷贝源代码如下,编译生成DLL(假如DLL的文件名是TestReflect.dll) using System; namespace Webtest ... { /**//**//**//// <summary> /// ReflectTest 的摘要说明。 /// </summary> public class ReflectTest ...{ public ReflectTest() ...{} public string WriteString(string s) ...{ return "欢迎您," + s; } /**//**//**//// <summary> /// dsajkjflasjdfalksdjfaskfd /// </summary> /// <param name="s"></param> /// <returns></returns> public static string WriteName(string s) ...{ return "欢迎您光临," + s; } public string WriteNoPara() ...{ return "您使用的是无参数方法"; } }} 2 应用于反射的例子 在ASPNET页面中加入以下函数: public void test1() ... { System.Reflection.Assembly ass; Type type ; object obj; try ...{ ass = System.Reflection.Assembly.LoadFile(@"d:TestReflect.dll"); type = ass.GetType("Webtest.ReflectTest");//必须使用名称空间+类名称 System.Reflection.MethodInfo method = type.GetMethod("WriteString");//方法的名称 obj = ass.CreateInstance("Webtest.ReflectTest");//必须使用名称空间+类名称 string s = (string)method.Invoke(obj,new string[]...{"jianglijun"}); //实例方法的调用 Response.Write(s+"<br>"); method = type.GetMethod("WriteName");//方法的名称 s = (string)method.Invoke(null,new string[]...{"jianglijun"}); //静态方法的调用 Response.Write(s+"<br>"); method = type.GetMethod("WriteNoPara");//无参数的实例方法 s = (string)method.Invoke(obj,null); Response.Write(s+"<br>"); method = null; } catch(Exception ex) ...{ Response.Write(ex+"<br>"); } finally ...{ ass = null; type = null; obj = null; } }