Linq组合查询和模糊查询



Linq组合查询和模糊查询。组合查询先组合出IQueryable语句,再执行查询;模糊查询使用Contains()StartsWith()EndsWith()等方法。

 

Linq组合查询:

DataClasses1DataContext db= new DataClasses1DataContext();
var query = db.Users.AsQueryable();//用户表
if (!string.IsNullOrEmpty(username))
{

    query =query.Where(c => c.UserName == username);
}

if (!string.IsNullOrEmpty(nickname))
{

    query = query.Where(c =>c.NickName == nickname);
}
var list = query.ToList();

 

 

Linq模糊查询:

DataClasses1DataContext db= new DataClasses1DataContext();

var query = db.Users.AsQueryable();//用户表

//等于
query = query.Where(c => c.UserName == username);

 

//like %username%
query = query.Where(c => c.UserName.Contains(username));

 

//like username%
query = query.Where(c => c.UserName.StartsWith(username));

 

//like %username
query = query.Where(c => c.UserName.EndsWith(username));

 

//出现位置
query = query.Where(c =>c.UserName.IndexOf(username) > 0);

var list = query.ToList();

<<返回列表