2010-03-15 59 views
2

我已经为并发情况实现了乐观锁定。 我已经使用映射文件中的版本属性来链接到一个整数。NHibernate覆盖乐观场景中的并发性

我的目标是,如果用户试图保存一个过时的对象,她将被赋予覆盖更改的选项。

我很容易设法让SaveOrUpdate引发一个异常,但是我现在怎么重写,以便如果用户愿意,当前对象覆盖现有的持久对象,同时仍然更新版本号,并且没有将变量的手动成员智能副本添加到非陈旧对象中?

这似乎是这是一个常规的逻辑场景,但我没有看到任何内置的机制,所以这是一个反模式?

感谢您的帮助和见解。

亲切的问候

LJ

回答

1

我想你应该看看session.Merge方法。

Jide