List排序(较实用的一种)

来源:互联网 发布:mysql简单指令 编辑:程序博客网 时间:2024/05/18 12:03
/// <summary>        /// 将List进行排序        /// </summary>        /// <param name="list">要排序的对象</param>        /// <param name="filed">要用来排序的字段</param>        /// <param name="rule">排序规则</param>        /// <returns></returns>        public static void ListSort(List<RoomInfoExtendsModel> list,string filed,string rule)        {            if (string.IsNullOrEmpty(filed) || list==null || string.IsNullOrEmpty(rule) || (!rule.ToLower().Equals("desc") && !rule.ToLower().Equals("asc")))            {                return;            }            try            {                list.Sort(                        delegate(RoomInfoExtendsModel r1, RoomInfoExtendsModel r2)                        {                            Type t = typeof(RoomInfoExtendsModel);                            PropertyInfo pro = t.GetProperty(filed);                            return rule.ToLower().Equals("asc") ? pro.GetValue(r1, null).ToString().CompareTo(pro.GetValue(r2, null).ToString()) :                                pro.GetValue(r2, null).ToString().CompareTo(pro.GetValue(r1, null).ToString());                        }                    );            }            catch            {            }        }

0 0
原创粉丝点击