gpt4 book ai didi

linq-to-sql - 基于列表的 LINQ 多个 LIKE

转载 作者:行者123 更新时间:2023-12-04 06:52:30 24 4
gpt4 key购买 nike

我在 ArrayList 中有一个关键字列表,我希望能够构建一个查询以根据此关键字在表中查找记录。

由于关键字列表是动态的,因此我无法在此处构建固定查询。

我做这样的事情:

foreach (string kw in keywords)
{
query = query.Where(p => p.Name.StartsWith(kw));
}

这里需要“StartsWith”,因为我需要搜索那些实际以提供的关键字开头的记录。

在 T-SQL 中它会是这样的
Select * from Table where 
Name like 'keyword1%'
or Name like 'keyword2%'
or Name like 'keyword3%'
or ...

但我需要能够在 LINQ 中做到这一点......这可能吗?

最佳答案

这应该这样做:

var query = table.Where(p => keywords.Any(kw => p.Name.StartsWith(kw)));

关于linq-to-sql - 基于列表的 LINQ 多个 LIKE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2921485/

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