排名
5
文章
229
粉丝
15
评论
7
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256


欢迎加群交流技术

其实就是利用or,and的小技巧而已,直接贴代码吧
var result = from query in userInfos
where (string.IsNullOrEmpty(username) || query.UserName.Contains(username)) &&
(string.IsNullOrEmpty(contry) || query.Area.Contains(contry))
select query;
// true || false --> true false || true -->true true || true-->true 或者其中一个为真结果为真
// 用户名和国家都为空的情况 ture & true --> ture 所以就会查询全部
// 用户名为空,国家不为空 true & (false|| query.Area.Contains(contry))-->就是看国家这个条件成不成立,所以就变成了只根据国家查询
// 用户不为空,国家为空 (false||query.UserName.Contains(username)) && true -->就变成了只看query.UserName.Contains(username)成不成立
/* 用户名不为空,国家不为空 (false||query.UserName.Contains(username))&&(false||query.Area.Contains(contry))
* 简化后-->query.UserName.Contains(username) && query.Area.Contains(contry) 也就是两个条件必须都满足
*/
在内存中这样操作还是可以的
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)
评价