<经验杂谈>C#中一种最简单、最基本的反射(Reflection):通过反射获取方法函数
说起反射之前和很多用C#/.net的同仁们一样,相比于一般应用层对数据的增删改查总有点觉得深奥到难以理解。其实程序这东西,用过、实践过就很简单,我一直这么认为。
先说下概念:反射 Reflection是.Net中获取运行时类型信息的方式,.Net的应用程序主要由:程序集(Assembly),模块(Module),类型(class)组成,而发射提供一种编程的方式,可以在程序运行时获取这几部分的信息。
Assembly可以获取正在运行的装配信息,也可以动态加载装配件以及在装配中查找类型信息,并创建该类型的实例。MethodInfo,通过这个类可以得到方法的名称、参数、返回值等。类似的还有FileInfo、EventInfo...
反射的简单运用:通过反射获取方法函数
String methodName ="SampleMethodName"; Type type = this.GetType(); MethodInfo method = type.GetMethod(methodName); if (method == null) throw new Exception("method is null"); method.Invoke(this, null); //反射执行函数 public void SampleMethodName() { // to do something }
码农都是有尊严的
转载请注明来源,谢谢
http://www.cnblogs.com/benpao/