8,497
社区成员
发帖
与我相关
我的任务
分享
string username = txtusername.Text;
string nickname = txtnickname.Text;
var users = (from u in db.table1
where username.length==0?true:u.username.Contains(username) &&
nickname.length==0?true:u.nickname.Contains(nickname)
orderby u.userId descending
select u);
var users = (from u in db.table1
select u);
if(username!="") {
users = (from u in users
where u.username.Contains(username)
select u);
}
if(nickname!="") {
users = (from u in users
where u.nickname.Contains(nickname)
select u);
}
users = (from u in users
orderby u.userId descending
select u);
利用 LINQ的延迟查询来实现:
var users = from u in db.table1
orderby u.userId descending
select u;
if(!String.IsNullOrEmpty(txtusername.Text))
{
users =users.Where(u=>u.username.Contains(txtusername.Text) );
}
if(!String.IsNullOrEmpty(txtnickname.Text))
{
users =users.Where(u=>u.nickname.Contains(txtnickname.Text) );
}