winform在企业信息化中对表的处理是一个核心技能,这里做一下零散经验的汇总,随时更新。
目录
2.在rgdata的list表中获取name为xxx的数据,按年、月升序排列
3.排序
1.对list的个别字段去重
rgdata是一个list表,对 rgdata.bmbm, rgdata.bmtxt进行去重(实际就是如果存在多个rgdata.bmbm+rgdata.bmtxt完全相同的,只保留一个)
var rgdata_bm = rgdata.GroupBy(d => new { d.bmbm, d.bmtxt }) //linq去重部门
.Select(d => d.FirstOrDefault())
.ToList();
2.在rgdata的list表中获取name为xxx的数据,按年、月升序排列
var list = from d in rgdata where d.name == "xxx" orderby d.year, d.month ascending select d;
List<rg> data = list.ToList();
3.排序
1.先按照第一个字段升序排序,然后相同数据按照降序排序?
//Labmda方式:
xxx.OrderBy(u=>u.id).ThenByDescendiing(u=>u.time);
//LINQ方式:
var values=from u in xx
Orderby u.id ascending, u.time descending
select u;
2.先按照第一个字段降序排序,然后相同按照升序排序?
//Lambda方式:
xxx.OrderByDescending(u=>u.id).ThenBy(u=>u.time);
//LINQ方式:
var values=from u in xx
Orderby u.id descending , u.time ascending
select u;
//Lambda:
descending:降序
ascending:升序
//LINQ:
降序:OrderBy和ThenBy
升序:OrderByDescending和ThenByDescending