C#利用反射机制,获取实例的属性和属性值
生活随笔
收集整理的這篇文章主要介紹了
C#利用反射机制,获取实例的属性和属性值
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C#利用反射,遍歷獲得一個類的所有屬性名,以及該類的實例的所有屬性的值
對應某個類的實例化的對象tc, 遍歷獲取所有屬性(子成員)的方法(采用反射):
Type t = tc.GetType();//獲得該類的Type
?
//再用Type.GetProperties獲得PropertyInfo[],然后就可以用foreach 遍歷了
foreach (PropertyInfo pi in t.GetProperties
{
??? object value1 = pi.GetValue(tc, null));//用pi.GetValue獲得值
??? string name = pi.Name;//獲得屬性的名字,后面就可以根據名字判斷來進行些自己想要的操作
??? //獲得屬性的類型,進行判斷然后進行以后的操作,例如判斷獲得的屬性是整數
?? if(value1.GetType() == typeof(int))
?? {
?????? //進行你想要的操作
?? }
}
注意:
?
? 必須要設置了get 和set方法的屬性,反射才能獲得該屬性
?
轉載于:https://www.cnblogs.com/xishuqingchun/p/3803116.html
總結
以上是生活随笔為你收集整理的C#利用反射机制,获取实例的属性和属性值的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LINQ to SQL语句(7)之Exi
- 下一篇: 逆战天鲲套如何刷核(逆战官方网站)