与'Dynamic LINQ OrderBy'类似,我想创建一个动态QueryOver-OrderBy。然而,当我这样做:nHibernate中的动态查询
query.OrderBy(h => h.GetType().GetProperty(sort.Member).GetValue(h, null)).Asc
我得到一个异常,说:
Unrecognised method call in epression h.GetType().GetProperty(value(Domain.Model.Repository+<>c__DisplayClass15).sort.Member).GetValue(h, null)
显然,NHibernate的有一些很难理解发生了什么事情。有没有人有关于如何解决这个特定问题的想法?
我正在使用QueryOver的强类型功能来构建查询的主要部分。这只是过滤和排序理想需要是动态的,因为这些指令来自GUI。我可以写一个大的if-else,但使用反射的更通用的解决方案将会更好。 – Pieter