System.InvalidOperationException: 'LINQ 表达式的 => EntityShaperExpression: 网站.型号.Product ValueBufferExpression: ProjectionBindingExpression:EmptyProjectionMember IsNullable:False .Content.Contains(s)“无法翻译。以可转换的形式重写查询,或者通过插入对“AsEnumerable”、“AsAsyncEnumerable”、“ToList”或“ToListAsync”的调用来显式切换到客户端计算。有关详细信息,请参阅 https://go.microsoft.com/fwlink/?linkid=2101038。
正如错误消息所说,您需要重写查询语句。尝试在子句之前添加 或。AsEnumerable()ToList()where
修改代码如下:
var searchs = new List<string> { "a1", "a2", "a3" };
var result = db.Products.AsEnumerable().Where(p => searchs.Any(s => p.Content.Contains(s))).ToList();
或
var searchs = new List<string> { "a1", "a2", "a3" };
var result = db.Products.ToList().Where(p => searchs.Any(s => p.Content.Contains(s))).ToList();
我这边的结果如下:
如果答案是正确的,请点击“接受答案”并点赞。 如果您对此答案还有其他疑问,请点击“评论”。
注意:如果您想接收相关电子邮件,请按照我们的文档中的步骤启用电子邮件通知 此线程的通知。