亲爱的我想在用户通过ADO.net中的LINQ将值输入搜索文本框时从数据库表中搜索用户
我有一个搜索文本框..当用户输入任何字母而不是搜索来自表格的用户名时,其姓名包含此字母!
我有这个代码: -
[HttpPost]
public ActionResult Userlist(string UserName)
{
var U_master = db.User_Masters.ToList();
if (!string.IsNullOrEmpty(UserName))
U_master = U_master.Where(a => a.Username.Contains(UserName)).ToList();
return PartialView("Userlist", U_master);
}
通过使用此代码,我可以搜索仅用户名文本框值将与数据库表的用户名匹配 但是当用户只输入用户名的单个字母时,我想显示数据库中的所有用户名记录..并显示所有姓名包含此字母的用户名。 请给格式写LIKE查询或给出任何例子..!
答案 0 :(得分:3)
您可以使用SqlMethods.Like(matchExpression,pattern)
var results = from c in db.costumers
where SqlMethods.Like(c.FullName, "%"+FirstName+"%,"+LastName)
select c;
在LINQ to SQL之外使用此方法将始终抛出NotSupportedException异常。
来源: Taken from
另请参阅此 post