C#学习教程:搜索function使用.Contains与一个字段中的术语分享


搜索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.ssfiction.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() 

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/1031553.html

发表评论

邮箱地址不会被公开。 必填项已用*标注