2010-07-12 38 views
1

我想做一個NHibernate對象(代理封裝)的深層副本。除了父對象的每個內部對象的Id之外,我還想執行延遲加載的事務的副本,因爲它應該在保存作爲深度複製結果的新對象時生成。如何做NHibernate對象的深層副本?

我試圖使用序列化,也嘗試使用AutoMapper(我知道,它不是這個意思,只是試了一下)。兩者都沒有得到我想要的。

我正在考慮手動複製每一個屬性作爲最後一個選項,如果沒有更好的方法來做到這一點。

我發現這個question,但它沒有解決我想要的,因爲我不願手動進行復制。

任何關於如何去解決它的建議將非常感激。

感謝

回答

1

當我們繼續克隆類時,我們必須完成更多的自定義。

因此,在我們的情況下,手動克隆是最好的選擇(儘管我希望獲得更好的解決方案)。

0

我們使用Copyable克隆對象(深克隆)。 Here你可以找到一篇描述可複製的文章。它提供了允許克隆對象圖的擴展方法(用於'對象'),並且通常對我們來說工作得非常好。 HTH。