在我的团队正在开发的项目中,有一个Windows服务迭代某个表中的所有实体,并根据我们定义的一些规则更新它们的一些字段。我们使用NHibernate作为我们的ORM工具。目前,我们为整个进程打开一个会话和一个事务,这意味着在所有实体被执行后提交事务。我认为这种方法并不好,我想听一些更多的意见: 我们应该保持目前管理会话的方式,还是应该采用不同的方法?
我想到的一个选项是为每个实体打开一个交易,另一个建议是为每个实体打开一个新会话。 您认为哪种方法最有效?
答案 0 :(得分:2)
没有一种方法可以做到;这一切都取决于具体案例。
在我正在开发的应用程序中,我有三种方法的示例,并且有理由选择每种方法。例如: