gpt4 book ai didi

c# - 此 Linq 查询的哪一部分对 nHibernate 无效?

转载 作者:太空宇宙 更新时间:2023-11-03 13:29:40 35 4
gpt4 key购买 nike

我有一个类似于以下内容的查询,我得到了一个 NotSupportedException(“不支持指定的方法”)。但是,如果我在 Distinct() 处执行它,然后在内存中执行其余部分,一切都很好。

MySession.Query<Person>()
.Where(person => person.StatusId == 1)
.Select(person => person.Address)
.Distinct() // .ToList() here fixes it.
.OrderBy(address => address.Addr1)
.ToList();

我在这里为 nHibernate 的 Linq Provider 做了一些非法的事情吗?如果是这样,知道如何操作它以便我仍然可以以服务器端执行延迟的方式运行它吗?最终,我的查询(Distinct() 以及之前的所有内容)从执行 OrderByToList 的代码中抽象出来。

我正在使用:

  • 1.3.0.733 流利
  • 休眠 3.3.3.4001
  • odp.net.x64(and86).112.3.0
  • .NET 4.0 完整框架
  • VS2010

最佳答案

NHibernate 对使用 DISTINCT 和 ORDER BY 有限制,http://www.ienablemuch.com/2010/12/performing-order-by-on-distinct-on-linq.html

关于c# - 此 Linq 查询的哪一部分对 nHibernate 无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21095413/

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