List查询排序删除泛型 应用

List<T>查询排序删除泛型 应用
  1public class PredicateTableEntityState
  2    {
  3        private string tmpStr;
  4
  5        public PredicateTableEntityState(string Str)
  6        {
  7            this.tmpStr = Str;
  8        }

  9
 10        public bool DrivingPredicate(TableEntity enty)
 11        {
 12            return (enty.State == tmpStr);
 13        }

 14    }

 15    public class PredicateTableEntityTBID
 16    {
 17        private int tmpTBID;
 18
 19        public PredicateTableEntityTBID(int TBID)
 20        {
 21            this.tmpTBID = TBID;
 22        }

 23
 24        public bool DrivingPredicate(TableEntity enty)
 25        {
 26            return (enty.TBID == tmpTBID);
 27        }

 28    }

 29    public class MyComp : IComparer<TableEntity>
 30    {
 31        /// <summary>
 32        /// 按序索引来排序
 33        /// </summary>
 34        /// <param name="x"></param>
 35        /// <param name="y"></param>
 36        /// <returns></returns>

 37        public int Compare(TableEntity x, TableEntity y)
 38        {
 39            return x.SID.CompareTo(y.SID);
 40        }

 41        /// <summary>
 42        /// 排序 升
 43        /// </summary>
 44        /// <param name="x"></param>
 45        /// <param name="y"></param>
 46        /// <returns></returns>

 47        public int CompareTableSpace_Name(TableEntity x, TableEntity y)
 48        {
 49            return x.TableSpace_Name.CompareTo(y.TableSpace_Name);
 50        }

 51        /// <summary>
 52        /// 排序 降
 53        /// </summary>
 54        /// <param name="x"></param>
 55        /// <param name="y"></param>
 56        /// <returns></returns>

 57        public int CompareTableSpace_NameDesc(TableEntity x, TableEntity y)
 58        {
 59            return y.TableSpace_Name.CompareTo(x.TableSpace_Name);
 60        }

 61        /// <summary>
 62        /// 排序 升
 63        /// </summary>
 64        /// <param name="x"></param>
 65        /// <param name="y"></param>
 66        /// <returns></returns>

 67        public int CompareTable_Name(TableEntity x, TableEntity y)
 68        {
 69            return x.Table_Name.CompareTo(y.Table_Name);
 70        }

 71        /// <summary>
 72        /// 按表名排序 降
 73        /// </summary>
 74        /// <param name="x"></param>
 75        /// <param name="y"></param>
 76        /// <returns></returns>

 77        public int CompareTable_NameDesc(TableEntity x, TableEntity y)
 78        {
 79            return y.Table_Name.CompareTo(x.Table_Name);
 80        }

 81        /// <summary>
 82        /// 排序 升
 83        /// </summary>
 84        /// <param name="x"></param>
 85        /// <param name="y"></param>
 86        /// <returns></returns>

 87        public int CompareOwner(TableEntity x, TableEntity y)
 88        {
 89            return x.Owner.CompareTo(y.Owner);
 90        }

 91        /// <summary>
 92        /// 排序 降
 93        /// </summary>
 94        /// <param name="x"></param>
 95        /// <param name="y"></param>
 96        /// <returns></returns>

 97        public int CompareOwnerDesc(TableEntity x, TableEntity y)
 98        {
 99            return y.Owner.CompareTo(x.Owner);
100        }

101        /// <summary>
102        /// 按ID编号排序 升
103        /// </summary>
104        /// <param name="x"></param>
105        /// <param name="y"></param>
106        /// <returns></returns>

107        public int CompareID(TableEntity x, TableEntity y)
108        {
109            return x.TBID.CompareTo(y.TBID);
110        }

111        /// <summary>
112        /// 按ID编号排序 降
113        /// </summary>
114        /// <param name="x"></param>
115        /// <param name="y"></param>
116        /// <returns></returns>

117        public int CompareIDDesc(TableEntity x, TableEntity y)
118        {
119            return y.TBID.CompareTo(x.TBID);
120        }

121    }

 PredicateTableEntityTBID pteTBID = new PredicateTableEntityTBID(1);
                                    list.RemoveAll(new Predicate<Entities.TableEntity>(pteTBID.DrivingPredicate));
原文地址:https://www.cnblogs.com/skyblue/p/934776.html