有序字典

  Dictionary<TKey, TValue>是不能进行排序的,即使它的扩展方法中有Enumerable.OrderBy<TSource, TKey>方法.

  使用有序字典,可以使用 SortedList或 SortedDictionary.若没有排序,可以使用 Enumerable.OrderBy<TSource, TKey>方法.如

 1 public static SortedList<string, string> GetProperties(Type t, object obj)

 2         {

 3             SortedList<string, string> dic = new SortedList<string, string>();

 4             string k, v;

 5             foreach (System.Reflection.PropertyInfo pInfo in t.GetProperties())

 6             {

 7                 try

 8                 {

 9                     //this.LayoutEngine = null;

10                     object[] attibutes = pInfo.GetCustomAttributes(typeof(System.ComponentModel.BrowsableAttribute), true);

11                     if (attibutes.Length <= 0) continue;

12                     k = pInfo.Name;

13                     v = pInfo.GetValue(obj, null) + "";

14                     dic.Add(k, v);

15                 }

16                 catch (System.Exception ex)

17                 {

18                     //todo:

19                 }

20             }

21             dic.OrderBy(kv => kv.Key);

22             return dic;

23         }

 

你可能感兴趣的:(有序)