gpt4 book ai didi

c# - LINQ:单个谓词中的多个 LIKE 子句

转载 作者:太空宇宙 更新时间:2023-11-03 19:19:15 26 4
gpt4 key购买 nike

我想做一个可以将多个变量与单个字符串进行比较的 LINQ 查询。我看过LINQ for LIKE queries of array elements ,这很有帮助,但不完全是。我需要反过来。

我想做的是:假设我有一个 Company兼具 Name 的对象和 Address .我还有一个字符串 keyword .然后,我想找到所有 Company列表中的 s 具有 keyword在他们的 NameAddress .在 SQL 中它将是...

SELECT * FROM Company
WHERE Name LIKE '%keyword%' OR Address LIKE '%keyword%'

我一直在使用 Entity Framework,并尝试了以下方法:context.Companies.Where(x => new string[] { x.Name, x.Address }.Contains(keyword) ,以及 context.Companies.Where(x => new string[] { x.Name, x.Address }.Any(r => r.Contains(keyword)) ,但都没有成功。第一个给了我 IN子句和第二个...我不知道它的作用,但它没有给我想要的东西。

对不起,我对表达式还没有很深入的理解(还);我希望我能够从头开始编写自己的自定义表达式,但是从头开始我还不能...有人可以帮助我吗?

最佳答案

为什么不只使用 || 运算符?

context.Companies.Where(x => x.Name.Contains(keyword) || 
x.Address.Contains(keyword))

我希望将其翻译成您的原始 SQL。

关于c# - LINQ:单个谓词中的多个 LIKE 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13599766/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com