程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 為List添加排序的函數處理並列排名情況(上篇)(3)

為List添加排序的函數處理並列排名情況(上篇)(3)

編輯:關於C語言

動態的獲取一個類型的屬性和值也類似 只不過是  傳遞對象 返回屬性名稱和值

/// <summary>
        /// 獲得一個類型的屬性名稱和值
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public static Dictionary<string, object> DynamicGetProperty(object obj)
        {
            Dictionary<string, object> temp = new Dictionary<string, object>();
            //獲得說有公開屬性 並把屬性名稱作為Key  值作為Value
            Array.ForEach<PropertyInfo>(obj.GetType().GetPropertIEs(), p => temp.Add(p.Name, p.GetValue(obj, null)));
            return temp;
        }

動態的創建類型 、設置值、獲取值的方法都有了。 我們還需要什麼方法。。

我們還需要一個獲取一個類型的屬性名稱和返回值的方法

/// <summary>
        /// 將一個類型的所有公開的屬性 和返回類型 放入Dictionary內
        /// </summary>
        /// <param name="type"></param>
        /// <returns></returns>
        private static Dictionary<string, string> TypeTransform(Type type)
        {
            Dictionary<string, string> dictionary = new Dictionary<string, string>();
            //獲得說有公開屬性 並把屬性名稱作為Key  值作為Value
            Array.ForEach<PropertyInfo>(type.GetPropertIEs(), p => dictionary.Add(p.Name, p.PropertyType.FullName));
            return dictionary;
        }

這時  動態創建類型  、動態設置值 、動態獲取值  動態獲取屬性和返回值的方法完成了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved