使用NHibernate LINQ

时间:2015-12-30 21:12:47

标签: c# linq nhibernate linq-to-nhibernate

我很难对我的实体进行简单的分组。 错误的代码行是

var xxx = jobQuery.GroupBy(j => j.EverifyCase)
    .Select(g => new { EC = g.Key, MRJ = g.Last() })
    .ToList();

这给了我以下HibernateException:

  

无法识别查询来源:ItemName =<生成> _1,   ItemType = EverifyCaseJob,   表达式=来自[ec]

中的EverifyCaseJob _1

如果我做jobQuery.ToList()一切都很好 - 所以我想问题出在GroupBy() "查询来源" 可以被识别为我在整个地方使用此实体,但目前尚未与GroupBy()一起使用。

有什么想法吗?

此外,任何人都可以解释错误信息的含义吗?

NHibernate版本是4.0.3.4000

我也使用Fluent NH - 版本2.0.1.0

1 个答案:

答案 0 :(得分:1)

基于Sql并且在分组组中没有顺序。因此它在组中没有最后的含义因此NHibernate无法将其转换为sql。另一方面的Max定义为一组,并且可以正常工作。