2017-02-13 184 views
1

我正在使用NHibernate和QueryOver。我有一個聚合根我的聚合名爲和兩種子實體。我有孩子實體是我的聚合的一部分,並且QUChild實體不是我的聚合的一部分,並且僅用於QueryOver中的JOIN子句。QueryOver只有<one to many>財產

如何區分映射文件中的兩個子實體?

<class name="Parent" table="Parent" schema="dbo"> 
     <bag name="Childs" inverse="true" cascade="all-delete-orphan" /> 
     <key> 
     </key> 
     <one-to-many class="Child" /> 
     </bag> 
     <bag name="QUChilds" /> <!-- which attribute must be set to do nothing? --> 
     <key> 
     </key> 
     <one-to-many class="QUChild" /> 
     </bag> 
</class> 

回答

0

那麼,什麼也不做。 NHibernate不會急於加載,也不會延遲加載它,如果您不從加載的父實體訪問它。

和默認級聯none,所以只是把它作爲您映射它。 (但是我會加上inverse="true"只是爲了防止代碼更改導致在該集合中添加一些孩子,稍後再添加。)