通常在我們使用C#時,對象的屬性進(jìn)行賦值或者取值時會使用到反射-“System.Reflection”。
反射:在程序運(yùn)行時,動態(tài)獲取程序集,類型(class,interface)和類型的成員信息(方法,字段,屬性等)。在程序運(yùn)行時,動態(tài)創(chuàng)建 類型實(shí)例, 以及調(diào)用和方法動態(tài)創(chuàng)建出來的類型實(shí)例的成員。

程序集
但由于反射的機(jī)制,當(dāng)我們在對對象集合使用反射進(jìn)行GET,SET的時候會消耗大量時間,從而引進(jìn)“字典”來改善這一問題:
第一步:聲明所謂的字典“Hashtable”
private static readonly Hashtable dic = Hashtable.Synchronized(new Hashtable());
第二步:構(gòu)造“SET”or"GET"方法:
Set:

Get:

第三步:將“PropertyInfo”添加到字典中:

(1)

(2)

(3)
以上便是通過“字典”的方式來加速對象的反射,詳細(xì)代碼可以訪問我的Github。