tnblog
首页
视频
资源
登录
什么时候才能领悟,取之越多失之越多
排名
5
文章
229
粉丝
15
评论
7
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

linq多条件查询方法

4814人阅读 2020/4/23 20:44 总访问:1165824 评论:0 收藏:0 手机
分类: .NET

其实就是利用or,and的小技巧而已,直接贴代码吧

  1. var result = from query in userInfos
  2. where (string.IsNullOrEmpty(username) || query.UserName.Contains(username)) &&
  3. (string.IsNullOrEmpty(contry) || query.Area.Contains(contry))
  4. select query;
  5. // true || false --> true false || true -->true true || true-->true 或者其中一个为真结果为真
  6. // 用户名和国家都为空的情况 ture & true --> ture 所以就会查询全部
  7. // 用户名为空,国家不为空 true & (false|| query.Area.Contains(contry))-->就是看国家这个条件成不成立,所以就变成了只根据国家查询
  8. // 用户不为空,国家为空 (false||query.UserName.Contains(username)) && true -->就变成了只看query.UserName.Contains(username)成不成立
  9. /* 用户名不为空,国家不为空 (false||query.UserName.Contains(username))&&(false||query.Area.Contains(contry))
  10. * 简化后-->query.UserName.Contains(username) && query.Area.Contains(contry) 也就是两个条件必须都满足
  11. */

在内存中这样操作还是可以的


欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价