gpt4 book ai didi

NHibernate,求和查询

转载 作者:行者123 更新时间:2023-12-03 16:38:34 25 4
gpt4 key购买 nike

如果我定义了一个简单的命名查询,则在一列上执行计数函数:

  <query name="Activity.GetAllMiles">
<![CDATA[
select sum(Distance) from Activity
]]>

</query>

如何通过 NHibernate 使用 IQuery 或 ICriteria 获取总和或任何不返回映射实体的查询的结果?

这是我的尝试(我现在无法测试它),这行得通吗?

    public decimal Find(String namedQuery)
{
using (ISession session = NHibernateHelper.OpenSession())
{
IQuery query = session.GetNamedQuery(namedQuery);


return query.UniqueResult<decimal>();
}
}

最佳答案

作为对您问题的间接回答,以下是我在没有命名查询的情况下如何做到这一点的方法。

var session = GetSession();
var criteria = session.CreateCriteria(typeof(Order))
.Add(Restrictions.Eq("Product", product))
.SetProjection(Projections.CountDistinct("Price"));
return (int) criteria.UniqueResult();

关于NHibernate,求和查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65060/

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