我有一個映射定義了父對象有一個子對象的集合。在我的設計中,我希望能夠刪除子對象,而不必從父對象的集合中刪除它們並重新保存父對象。但是,當我嘗試這樣做時,我得到「刪除的對象將在保存時重新創建」錯誤。有沒有辦法來防止這種情況,我可以簡單地刪除子對象,而不用擔心從父對象的集合中刪除它?這感覺就像做了兩倍的工作。理想情況下,我想從NHibernate的角度將父對象的集合視爲只讀對象。NHibernate中的集合可以映射爲只讀嗎?
0
A
回答
0
它會幫助你發佈你的映射文件,但它聽起來像你需要添加Inverse=true
到集合映射。這意味着子對象負責處理任何保存或更新,而不是父對象。
但是,在數據庫中它的所有模型都是相同的。孩子應該有一個父行ID的列。 NHibernate將根據Inverse
屬性創建不同的SQL。我想提供更多的細節,但我也自己學習NHibernate。
0
我相信你唯一需要做的就是將父對象映射文件中的子對象集合設置爲cascade="none"
。
當然,這也會阻止通過將子對象分配給父集合並更新父對象來保存子對象。如果那是好的,那麼你得到了你的解決方案。
相關問題
- 1. NHibernate的集合映射 - 只讀屬性
- 2. 如何映射Nhibernate集合
- 3. NHibernate - 映射組件集合?
- 4. nhibernate:如何映射集合
- 5. NHibernate查詢映射集合
- 6. NHibernate中的多對多集合映射
- 7. 在nHibernate中,我可以將抽象基類映射到集合嗎?
- 8. 可以將映射映射爲0嗎?
- 9. Nhibernate映射 - 孩子可以持有對其父集合的引用嗎?
- 10. 映射集NHibernate的
- 11. NHibernate的映射與鑑別集合
- 12. 異常NHibernate的集合/繼承映射
- 13. 枚舉集合的nHibernate代碼映射
- 14. 組件集合映射NHibernate的3.2
- 15. NHibernate的集合映射問題
- 16. NHibernate - 如何映射樹的集合
- 17. NullReferenceException映射與流利NHibernate自動映射枚舉的集合
- 18. nhibernate自定義集合映射
- 19. NHibernate映射集合沒有外鍵
- 20. 用Fluent NHibernate映射集合類型
- 21. 如何將整個映射設置爲只讀在NHibernate 3.2映射的代碼?
- 22. 功能NHibernate自動映射與覆蓋:映射未映射的基類集合
- 23. NHibernate的多列映射集
- 24. 流利的NHibernate:如何映射整個班級爲只讀?
- 25. 流暢的NHibernate映射爲只讀屬性
- 26. 集合映射
- 27. 如何映射通過只讀屬性訪問的集合?
- 28. Java中的集合映射
- 29. 功能NHibernate複合映射
- 30. 我可以不加載給定的映射屬性(nhibernate)嗎?