winform中<list>处置与linq操作的方法技巧经验汇总

winform在企业信息化中对表的处理是一个核心技能,这里做一下零散经验的汇总,随时更新。

目录

1.对list的个别字段去重

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT技术与企业应用结合的爱好者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值