运算符和参数中的 HQL
Posted
技术标签:
【中文标题】运算符和参数中的 HQL【英文标题】:HQL in operator and parameters 【发布时间】:2009-01-27 15:42:10 【问题描述】:需要为实体的多个实例查询 NHibernate。我尝试过以下代码,但由于有线 NRE 深入 NHibernate 失败。
var query = NHibernateSession.CreateQuery("from User u where u.id in (:ids)");
query.SetParameterList("ids", new Guid[]);
query.ToList();
这看起来很常见 - 有什么建议吗?
更新仅当数组为空时才会发生这种情况 - 问题已关闭。
【问题讨论】:
【参考方案1】::ids 将是一个空的 Guid 数组,不是吗?您要求 NHibernate 为您提供 id 在未初始化的 Guid 数组中的用户。
【讨论】:
是的,我知道。这只是一个例子。将新的 Guid[] 替换为新的 [] Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid(),Guid.NewGuid() 但是 Guid 应该给你这个,唯一的 id。您要求数据库上的 id 与一些新的唯一 id 相同。如果我没有得到它,告诉我,我会删除这个答案;) 你没有得到它,但你是对的 :) 错误只发生在空数组上。我刚刚在空数据库上进行了测试。以上是关于运算符和参数中的 HQL的主要内容,如果未能解决你的问题,请参考以下文章