var user = from u in db.UserManage
where (string.IsNullOrEmpty(age)) ? true : (u.age == a)
&& (string.IsNullOrEmpty(userName)) ? true : u.userName.Contains(userName)
select u;
var user = from u in db.UserManage
where (string.IsNullOrEmpty(userName)) ? true : u.userName.Contains(userName)
&& (string.IsNullOrEmpty(age)) ? true : (u.age == a)
select u; ------解决方案-------------------- 打个比方:
第一个查询是这样: 从年龄等于18岁的人中找姓张的
第二个查询: 从姓张的人中找年龄是18岁的
我建议你这么写:
var user = from u in db.UserManage select u;
if(!string.IsNullOrEmpty(age))
user=user.Where(u=>u.age == age);
if(!string.IsNullOrEmpty(userName))
user=user.Where(u=>u.userName.Contains(userName));