C# List进行分页操作//CurrentPage 第几页//PageSize 一页多少条数据var data = (list.Skip((CurrentPage - 1) * PageSize).Take(PageSize)).ToList();
Skip方法用来跳过指定数量的元素,并返回剩余的元素。
Take方法是用来从List开头返回指定数量的元素。
C# Linq获取两个List或数组的差集交集List list1 = new List();list1.Add(1);list1.Add(2);list1.Add(3);List list2 = new List();list2.Add(3);list2.Add(4);list2.Add(5);//得到的结果是4,5 即减去了相同的元素。List list3 = list2.Except(list1).ToList();foreach (int i in list3){ MessageBox.Show(i.ToString());}
将一个list拆分多个list将一个list拆分多个list/// /// 一个list拆分多个list/// /// "list"[ span]="">要拆分的集合/// "num"[ span]="">拆分数/// public Dictionary> SplitList(List list, int num) { int listSize = list.Count; // 长度 Dictionary> contractItemDic = new Dictionary>(); //用户封装返回的多个list List contractItemList = new List(); ; //用于承装每个等分list for (int i = 0; i < listSize; i++) { //for循环依次放入每个list中 contractItemList.Add(list); //先将对象放入list,以防止最后一个没有放入 if (((i + 1) % num == 0) || (i + 1 == listSize)) { //如果l+1 除以 要分的份数 为整除,或者是最后一份,为结束循环.那就算作一份list, contractItemDic.Add("ContractItem" + i, contractItemList); //将这一份放入Map中. contractItemList = new List(); //新建一个list,用于继续存储对象 } } return contractItemDic; }