//獲取具有指定名稱的type,執行區分大小寫的搜尋。
//tips:gettype包括object.gettype()和type.gettype6個過載靜態方法
type ty = type.gettype("exthomeexpansion.view.zyl");
//通過引導程式集也可以獲得對應類的型別
//其中load方法後面直接加上引用程式集的fullname
//type ty=assembly.load("exthomeexpansion").gettype("exthomeexpansion.view.class1");
//使用指定型別的預設建構函式來建立該型別的例項。
object
obj = activator.createinstance
(ty);
//獲取方法的資訊,這裡的方法名為geta
methodinfo method = ty.getmethod("geta");
//呼叫方法的一些標誌位,這裡的含義是public並且是例項方法,這也是預設的值
bindingflags flag = bindingflags.public | bindingflags.instance;
//方法的引數
object parameters = null;
//呼叫方法,用乙個object接收返回值
object
returnvalue = method.invoke
(obj, flag, type.defaultbinder, parameters, null);
//獲取屬性資訊
propertyinfo pi = ty.getproperty("b");
object
ot = pi.getvalue
(obj, null);
C 反射的使用
使用反射的主要目的在於動態建立物件,由於物件存在於不同的程式集中,因此在動態建立物件時不但需要知道物件名稱,還需要物件所在的程式集路徑,應用而生出現了反射幫助我們解決了此問題。1.在程式執行時,動態獲取 程式集,型別 class,inte ce 和型別的成員資訊 方法,字段,屬性等 2.在程式執行時...
C 反射的使用
using system.reflection region 反射方法 根據路徑名稱反射指定方法 程式集名稱 類名稱 從程式集開始索引,如 bll.demo.demo 方法名 方法引數 public static string reflectionmethodfromname string asse...
C 反射使用示例
分享一下自己寫的使用反射的例子,包括根據名字獲取屬性值 字段 類的示例對,如自己申明的類或者list等 呼叫函式 無參 有參 介面如下 貼上 namespace relectiontest public int age 16 public men li new men 李四 private int ...