nhibernate SaveOrUpdate - 轻松确定将执行哪些操作

von*_*dip 1 nhibernate repository-pattern

我是nhibernate的新手.我正在使用存储库模式开发一个小型的c#应用程序.在我的存储库中,我实现了一个简单的钩子来检测实体何时被保存.我调用实体的事件处理程序来执行实体可能需要的任何操作.

我的问题是,我也使用SaveOrUpdate方法.由于我只需要在保存操作上调用事件处理程序,因此我无法区分SaveOrUpdate调用中的保存或更新.

因此,简而言之,是否有任何简单的方法来确定将执行哪些操作 - 它是保存还是更新?

dan*_*iax 6

如果未设置实体的ID,则nHibernate将调用Save方法,否则将调用Update方法.

看这里:

SaveOrUpdate与NHibernate中的更新和保存

"SaveOrUpdate()查看标识符并决定上面的内容."