将投影添加到nhibernate查询

时间:2009-07-10 16:51:37

标签: c# nhibernate

将预测添加到已经可能有或可能没有设置一个或多个投影的nhibernate查询的最佳方法是什么?调用.SetProjection()似乎可以替换可能已存在的任何投影。

为了给出一些背景上下文,我正在使用找到here的分页结果扩展方法的一个版本,我已经到了一个点,我在一个查询中传递了一个不同的投影但是该投影被剥离了因为调用.SetProjection(Projections.RowCountInt64)而计数标准。

2 个答案:

答案 0 :(得分:2)

我不确定它是否会起作用,因为我现在无法检查它,但为什么不使用ProjectionList之类的东西来做这个技巧?


var criteria = ...
var projectionList = Projection.ProjectionList();

// Add you projections to the projectionList
projectionList.Add(yourQueryProjection);
projectionList.Add(Projections.RowCountInt64());

criteria.setProjection(projectionList);

答案 1 :(得分:0)

我没有这样做,所以你可能需要重做一点,但我相信你可以做点什么

.ProjectionCriteria.Add(Projections.RowCountInt64)

由于它可能没有设置任何投影,您可能需要检查在这种情况下ProjectionCriteria属性是什么。它可能为空。

相关问题