我对NHibernate和CSLA.NET都很陌生,并且遇到了这样一个问题:我实际上需要在同一个事务(因此,会话)中在数据库中保存同一行两次。我已经在SO w.r.t上读过其他问题了。NonUniqueObjectException,以及做了很多谷歌,但我似乎不能使任何工作。
无论如何,我创建了一个会话,开始了一个事务,并执行了myObject = myObject.Save()。据我所知,CSLA在保存之后创建了一个新的myObject实例并返回它,这个实例显然会被分配给myObject。
稍后(在同一事务中),我需要再次执行myObject.Save()。这就是NonUniqueObjectException发生的地方。我尝试过使用NHibernate会话锁定和合并myObject,但似乎不起作用。
还有什么是我应该尝试的吗?有没有一种用NHibernate做“嵌套”事务的简单方法(尽管我不确定这是否能解决这个问题)。
如果有任何建议,我将不胜感激。
发布于 2009-09-02 21:58:24
为什么不使用saveorupdate
https://stackoverflow.com/questions/1370348
复制相似问题