c# - 如何构建可查询以从数据库列中查找字符串数组的所有单词
问题描述
我有这个代码,任何机构都有解决方案
string[] splitSearch = request.Search.Split(' ');// for example: [best , selling , book , of , the , year] or [in , memory , of , love]
var queryable = _context.books.AsQueryable();
queryable = queryable
.Where(x => x.Title.Contains(request.Search)
|| x.Description.Contains(request.Search)
foreach (string split in splitSearch)
{
|| x.Title.Contains(split)
|| x.Description.Contains(split)
}
);
var Books = await queryable
.Skip(request.Offset ?? 0)
.Take(request.Limit ?? 3).ToListAsync();
但是因为在 where 子句中不允许 foreach 出现错误,如果我将所有可查询的内容放在 foreach 然后在 Each 循环中,我的查询受到添加的 where 子句的限制并返回错误结果,我需要 '||' 在 where 子句中,我不知道我的客户想输入多少字
解决方案
推荐阅读
- python - Python3 - 更改传入变量的引用
- amazon-web-services - 如何通过向 Lambda 函数发送 API 请求来安排在特定时间启动 EC2 实例?
- reactjs - 反应日期选择器 - 删除周
- spring - 使用 zipkin 时未为子调用捕获 URL 路径
- java - 如何在 Apache2 后面的 AWS-EC2 实例上设置 Google OAuth 登录
- python - 错误选项“-options”:必须是 -default、-detail、-icon、-message、-parent、-title 或 -type
- haskell - 为什么这个函数会导致编译时溢出?
- c# - ajax 上传图片错误 C://fakepath
- java - 如何为弹簧控制器选择正确的日期类型?
- php - 在个性化数据表中显示 bata