2010-07-16 108 views
0

我有一個案例類暴露Person對象如下:NHibernate的級聯更新/插入

public class Case 
{ 
    public virtual Person Deceased {get;set;} 
} 

我有一個PersonalAsset類也公開了一個人:

public class PersonalAsset 
{ 
    public virtual Person Owner {get;set;} 
} 

假設我寫以下代碼在ISession中:

Case case = new Case(); 
Person deceased = new Person(); 
case.Deceased = deceased; 
PersonalAsset asset = new PersonalAsset(); 
asset.Owner = deceased; 
session.SaveOrUpdate(case); 

是否有任何映射配置將保存PersonalAss自動?或者我還需要調用session.Save(資產)?

感謝

大衛

回答

1

他們之間沒有一個參考,你需要手動保存的東西。從建模的角度來看,你可能錯過了擁有這兩種東西的聚合根?

+0

我認爲你的迴應可能會澄清問題。我不太確定這個總數是多少 - 不是案件本身,就是死者。 – David 2010-07-16 20:43:16

+0

我強烈懷疑一個人應該包含一系列資產。 – 2010-07-16 21:08:00

+0

是正確的。你聚合的根是Case,而Person有很多資產。 – 2010-07-17 12:46:26