我需要从一个HQL查询NHibernate的NHibernate的:返回一个常量在HQL
SELECT new NDI.SomeQueryItem(user, account, " + someNumber + ")
FROM NDI.SomeObject object
我想要的东西,像上面返回一个常量。我已经试过这样:
SELECT new NDI.SomeQueryItem(user, account, :someNumber)
FROM NDI.SomeObject object
再后来:
.SetParameter("someNumber", 1).List<SomeQueryItem>();
但在第一种情况下,我得到一个“未定义别名或未知的映射1”。这是有道理的,因为它可能认为1是别名。
对于第二次,我得到'未定义的别名或未知的映射:someNumber',如果它从未设置参数,这又有意义。我不得不相信有一些方法可以做到这一点。
“NHibernate将数据库中的内容映射到对象上”公平点,问题是基于数据库外的值的此值,并且该项目的构造函数具有基于该值的逻辑。这几乎就像使用查询来传递信息。我不会在这个问题上争论正确或错误...... – 2009-04-09 16:09:16