在我的域驅動設計中,我有一個包含實體,比如Car,它有一個構成實體列表,例如,輪。域驅動設計,包含實體和NHibernate持久性
現在,我想爲我的汽車實體添加ChangeWheel方法。請注意,更換車輪實際上並未實際修改汽車實體。它隻影響車輪收集中的一個實體。即Car實體具有IList屬性。在我的數據庫模式中,我有一個沒有引用車輪的車實體 - 相反,Wheels表有一個CarId的外鍵。
當我更換汽車上的車輪時,我更新了特定的車輪記錄。我想要更新的唯一其他表是數據庫中的版本審計表。
如果我通過NHibernate從存儲庫中提取Car實體,調用ChangeWheel(...),然後再次保存下來,我可以配置NHibernate不保存新版本的Car記錄嗎?
我希望這一切都很有意義 - 請問如果不是,並提前致謝。
只有當記錄中的數據實際發生了變化時,任何好的ORM才應該將數據保存到數據庫表中。 – 2009-06-10 14:57:10