2011-07-18 24 views

回答

4

如果您有雙向關聯,則從.net一側,您必須編碼雙方。像

parent.Children.Add(child); 
child.Parent = parent; 

但是從nhibernate的角度來看,這將默認爲每行發送2個更新語句。你想要的只是更新Child表的ParentId列。 Inverse = true確保對該部分所做的更改不會導致數據庫中的任何更改。所以,如果你使用逆=真正的和只寫下面

parent.Children.Add(child); 

什麼都不會在DB發生自認爲是反方。

+0

那麼從NH的角度來看,哪一邊是對Db的UPDATE調用的原因? – pencilCake

+1

總是非反面導致更新。反面被忽略 – emperon

相關問題