这似乎是我遇到的最普遍的错误——关于它的多篇 SO 帖子都指的是不同的问题——这是一个新的问题:)

当枚举以下 IQueryable 时,我收到上述错误:

N.B. items 是一个 IQueryable<tblItem> 并且 keywords 是一个 string

items = items.Where(p => p.heading.ToLower().Contains(keywords) ||
                         p.description.ToLower().Contains(keywords));

这令人困惑,因为正如错误所暗示的那样,当您使用 Contains 时它应该可以正常工作 - 有谁知道如何解决这个问题?

最佳答案

如果关键字是支持枚举的集合,那么它应该是其他方式:

items = items.Where(p => keywords.Contains(p.heading.ToLower()) ||
                         keywords.Contains(p.description.ToLower()));

关于LINQ - 本地序列不能用于查询运算符的 LINQ to SQL 实现中,但包含运算符除外,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13949152/

10-13 06:11