nHibernate 3,sql-query,IndexOutOfRangeException

时间:2010-12-19 04:46:41

标签: sql nhibernate

在我的nHibernate映射中,我有一些看起来像

的东西
<sql-query name="spLogin">
  <return class="User" />
  EXEC dbo.spLogin :username, :password
</sql-query>

问题是spLogin不会返回User实体的所有属性。如果缺少其中一个属性,nHibernate会在结果集中不存在的属性上抛出IndexOutOfRangeException。

如果实体是作为未返回所有属性的sql查询的一部分检索的,那么nHibernate是否有理由无法延迟加载此属性?

2 个答案:

答案 0 :(得分:0)

16.2.2. Using stored procedures for querying

您是否尝试过添加<return-property/>元素?

您想要延迟加载的属性是否标记为延迟?

答案 1 :(得分:0)

今天早上我一直在努力解决同样的错误。事实证明,我的返回属性元素完全匹配从存储过程返回的内容。一旦纠正错误就会消失。