5
我試圖在<loader>
元素中使用HQL查詢來加載基於其他實體的實體。使用nhibernate <loader>元素與HQL查詢
我的班級如下
public class ParentOnly
{
public ParentOnly(){}
public virtual int Id { get; set; }
public virtual string ParentObjectName { get; set; }
}
和映射看起來像這樣
<class name="ParentOnly">
<id name="Id">
<generator class="identity" />
</id>
<property name="ParentObjectName" />
<loader query-ref="parentonly"/>
</class>
<query name="parentonly" >
select new ParentOnly()
from SimpleParentObject as spo
where spo.Id = :id
</query>
,我attemping到頂部映射的是SimpleParentObject,有其自身的映射,並且可以在類被加載和保存沒有問題。
當我打電話session.Get <ParentOnly>
(ID),在SQL正確違背了SimpleParentObject表,並且ParentOnly對象實例化(因爲我可以通過建築工步),但只有一個空回來,而不是實例化ParentOnly對象。
我可以使用一個而不是HQL成功做到這一點,但我試圖以獨立於數據庫的方式構建它。
有關如何獲取<loader>
和<query>
元素以返回填充的ParentOnly對象的任何想法......?
感謝
馬特
HQL查詢順便說一句,任何人想知道爲什麼人會想用這個。 – 2010-03-26 08:32:31