如何将现有的nhibernate对象复制为新对象?

时间:2009-11-10 15:17:29

标签: .net nhibernate

我是一个持久的NHibernate对象,我想将其重新作为一个新实体。我如何让NHibernate保存这个对象,好像它是一个新对象?

我想我可能会创建一个会话拦截器来强制每个实体看起来都是新的,并确保id像新的未加载的实体一样留空。

2 个答案:

答案 0 :(得分:1)

您可以在班级中实施克隆方法。由您决定如何执行此操作(吞下或深拷贝)。必须将identity属性设置为映射文件中声明的'unsaved-value',以便NHibernate知道它是一个新对象。

答案 1 :(得分:0)

我在NHForge论坛上找到了这个topic。查看session.merge。