Var*_*arg 1 c# linq asp.net-mvc search
我已经搜索了很多关于这个问题的简单答案,但我失败了.我是MVC的新手,刚刚创建了一个小搜索引擎.它适用于1个关键字,但不超过1个关键字.
如果我搜索"俄亥俄州钓鱼",我想让所有用户从数据库中获取这些关键字.我如何解决几行问题?以下是我目前未经修改的代码:
public ActionResult Search(string Users)
{
var v = from p in db.UserProfiles
where (p.UserName.Contains(Users)) ||
(p.About.Contains(Users)) ||
(p.City.Contains(Users))
select p;
return View("Find", v.ToList());
}
Run Code Online (Sandbox Code Playgroud)
如果我没有错,那么我相信你想分别搜索这些条款,即'Ohio fishing'你想分别搜索Ohio和钓鱼.在这种情况下,您需要将字符串拆分为空格,然后使用包含如下:
public ActionResult Search(string Users)
{
string[] terms = Users.Split();
var v = from p in db.UserProfiles
where (terms.Any(r=> p.UserName.Contains(r))) ||
(terms.Any(r => p.About.Contains(r))) ||
(terms.Any(r => p.City.Contains(r)))
select p;
return View("Find", v.ToList());
}
Run Code Online (Sandbox Code Playgroud)
您还应该在SQL Server上查找全文搜索功能
| 归档时间: |
|
| 查看次数: |
2109 次 |
| 最近记录: |