我正使用 linq 到 nhiberate 从大表格查询数据。 我正试图限制我的数据查询, 仅获取最后1000 行, 然后再进行过滤、 排序和 pagin 。
当我试图使用. takee() 我有一个错误:
unable to locate HQL query plan in cache; generating (.Count[X4Data.Entity.IEventView](.OrderBy[X4Data.Entity.IEventView,System.DateTime](.Take[X4Data.Entity.IEventView](.Where[X4Data.Entity.IEventView](NHibernate.Linq.NhQueryable`1[X4Data.Entity.IEventView], Quote((x, ) => (Equal(x.DeviceId, p1))), ), p2, ), Quote((c5d4d87c-87ba-4e91-9652-bcdc87e3f0ba, ) => (c5d4d87c-87ba-4e91-9652-bcdc87e3f0ba.AtmTime)), ), ))
我的代码:
query = query.Take(rowCount);
query = query.ApplyFiltering(cmd, binder);
query = query.ApplySorting(cmd, binder);
binder.TotalCount = query.Count();
query = query.ApplyPaging(cmd);
非常感谢,为我的坏英语感到抱歉