gpt4 book ai didi

c# - QueryOver 错误 : Unrecognised method call in expression value

转载 作者:行者123 更新时间:2023-11-30 20:06:46 27 4
gpt4 key购买 nike

我在 Nhibernate3.1 中有一个 QueryOver 查询

 var q = SessionInstance.QueryOver<Person>()
.Where(x => IsActive(x.PersonType) == true);

return q.List<Person>();

通过这种方法:

private bool IsActive(PersonType type)
{
if(type == PersonType.Employee
return true;
else
return false;
}

现在它有一个运行时错误消息:

Unrecognised method call in expression value

为什么?

最佳答案

我通过在谓词方法中返回表达式树而不是直接返回 bool 值来解决类似的问题。使用您的示例,它将是这样的:

private Expression<Func<PersonType, bool>> IsActive()
{
return (t => t == PersonType.Employee );
}

关于c# - QueryOver 错误 : Unrecognised method call in expression value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9377774/

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