c# - LINQ to Entities 无法识别方法 'Boolean ToBoolean

标签 c# entity-framework linq

<分区>

我有这样一个类:

public class menu{
public string Permission{get;set;}
}

Permission 的值是 Encripted 。我想要所有 PermissionTrue 的记录。为此,我使用此查询:

return 
_menuSettings.Where(row => Convert.ToBoolean(Utilities.Encryption.Decrypt(row.Permission,"key"))==true).ToList();

但是我得到这个错误:

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

我在谷歌上搜索过,但我无法解决。

谢谢

最佳答案

你要的是数据库查询无法实现的。恐怕你被这样的内存过滤所困(希望你没有太多记录)

return 
_menuSettings.AsEnumerable().Where(...

此处 AsEnumerable() 会将上下文从 Linq to Entities 切换到 Linq to Objects

关于c# - LINQ to Entities 无法识别方法 'Boolean ToBoolean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34381579/

相关文章:

LINQ 查询到 SQL 脚本

c# - 如何将OperationContract应用到接口(interface)中的所有方法

c# - EF6 PK 和 FK 约束命名约定

c# - 如何重写此 Linq 查询以避免使用 FirstOrDefault?

c# - 合并两个列表并从列表 A 中减去列表 B 的值

c# - 使用 linq 在 C# 中拆分和加入

c# - 用于选择畅销书的 LINQ 查询

c# - Visual Studio 2012 调试多个项目

c# - 如何使用 jquery 在不刷新页面的情况下刷新 View 组件

c# - 在数据库更改时刷新实体