2
我正在與NHibernate項目的類類似以下內容:Nhibernate - 如何刪除孩子?
public class Parent {
public IList Children {get;set;}
// ...
}
public class Child {
// ...
}
我已經得到了兒童屬性設置爲層疊所有/刪除孤兒。由於我使用的是聚合模式,並且Child類的實例只能在Parent的上下文中引用,所以我沒有ChildRepository直接刪除子代 - 只有ParentRepository。但是,當我檢索父對象並調用Parent.Children.Clear()時,數據庫中的子項不會被刪除。我怎樣才能做到這一點?
但問題是,我使用存儲庫模式,我不具有對會話對象的直接訪問。我將所有內容都包裝在一個IUnitOfWork實例中,該實例抽象會話對象+事務並在實例提交NHibernate事務的最後工作單元上調用Commit()。 – Chris 2010-02-25 16:38:24
我想我只需要將Save方法添加到我的存儲庫基類中。顯然,儘管我直到現在還沒有需要它,但這是我框架中一個相當大的漏洞。 – Chris 2010-02-25 16:50:56