搜索function使用.Contains与一个字段中的术语
我为产品网站构建了搜索function。 搜索工作正常。 最近,我们在数据库中添加了一个SearchTerm字段。 SearchTerm数据示例:“工作鞋蓝黑色齿轮”当前代码是
pM = (from p in ctx.Products where p.productSearchField.Contains(term) || p.productName.Contains(term) select p).ToList()
如果术语=“鞋子”< – 有效
如果术语=“工作鞋”< – 有效
如果术语=“黑鞋”< – 不起作用。
我还尝试用逗号分隔SearchTerm数据,但这不起作用。 任何建议?
将该术语分为单个术语。 看看是否匹配:
term.Split(' ').Any(i => p.productSearchField.Contains(i))
或者如果每个单词必须匹配:
term.Split(' ').All(i => p.productSearchField.Contains(i))
编辑
上述就是C#学习教程:搜索function使用.Contains与一个字段中的术语分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
var terms = term.Split(' '); pM = (from p in ctx.Products where terms.All(i => p.productSearchField.Contains(i)) || p.productName.Contains(term) select p).ToList()
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1031553.html