EF Core 与 Jaro-Winkler 相似距离算法

EF Core with Jaro-Winkler similarity distance algorithm

我想使用 Jaro-Winkler 等相似性距离算法在我的数据库中搜索字符串。但是 EF Core 无法翻译此类表达式。所以你不能使用如下表达式:

query.Where(x => JaroWinkler.Similarity(x.Title, someText) > 0.5);

我的问题是如何使用 EF Core 实现它?有什么办法吗?

在您的数据库供应商 SQL 方言中实施算法并注册它 https://docs.microsoft.com/en-us/ef/core/querying/user-defined-function-mapping

一些数据库供应商有一些用于全文搜索的比较算法或扩展(即 MS Sql DIFFERENCE 或 FREETEXT)

或用于内存处理