gpt4 book ai didi

c# - 使用 LINQ 拆分字符串

转载 作者:太空狗 更新时间:2023-10-29 22:20:04 25 4
gpt4 key购买 nike

我想根据我的结果和我的字符串行中的匹配计数进行排序。

代码如下

.ThenByDescending(p => p.Title.ToLower()
.Split(' ')
.Count(w => words.Any(w.Contains)));

但它给我带来了错误,并指出 LINQ 无法将 Split 解析为 SQL。

LINQ to Entities does not recognize the method 'System.String[] Split(Char[])' method, and this method cannot be translated into a store expression.

如何通过 LINQ 实现 Split?

例如,对于这个数组,它必须以这种方式排序

words = { "a", "ab" }

ab a ggaaag gh //3 matches
ba ab ggt //2 matches
dd //0 matches

最佳答案

这意味着 Linq to entities 未能找到可以写成 sql 查询的 split 方法的翻译。如果您想执行拆分功能,您必须通过调用 ToList()AsEnumerable() 等将记录放入内存中。

var result = (from t in db.Table
select t).AsEnumerable().OrderBy(x=>x.Column).ThenByDescending(p=>p.Title.ToLower.Split(' ')....);

关于c# - 使用 LINQ 拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8653200/

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