gpt4 book ai didi

c# - 如何在 EF Core Like 函数中使用通配符

转载 作者:太空宇宙 更新时间:2023-11-03 14:43:16 25 4
gpt4 key购买 nike

.NET 核心 2.2.0

我想在 EF Core 的 Like 函数中使用通配符,但它并没有像我期望的那样工作,而且我在一些帖子中读到了相关内容(最佳示例 here)

我的代码:

List<string> list = new List<string>();
list.Add("Hi fransois");
list.Add("Hi francois");
list.Add("Hi françois");

List<string> testa = list.Where(a => EF.Functions.Like(a, "%francois%")).ToList(); // Results in 1 hit, as expected
List<string> testb = list.Where(b => EF.Functions.Like(b, "%françois%")).ToList(); // Results in 1 hit, as expected
List<string> testc = list.Where(c => EF.Functions.Like(c, "%fran[cç]ois%")).ToList(); // Results in 0 hits, EXPECTED: 2

为什么这没有按预期工作?

最佳答案

不幸的是,这看起来行不通。但是有一个使用 Regex 的解决方法:

    Regex regex = new Regex("fran[cç]ois");
List<string> testd = list.Where(d => regex.IsMatch(d)).ToList();

这有效。

关于c# - 如何在 EF Core Like 函数中使用通配符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55691039/

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