如何在NHibernate中添加嵌套事务?

时间:2018-01-30 15:35:13

标签: c# nhibernate

我有一个用例,我在一个函数中处理多个配置,每个配置处理在一个单独的事务中运行,如果一切正常,事务会被提交,现在如果在处理进一步配置时出现任何问题,我想要恢复所有减刑交易。任何人都可以帮我提供代码片段吗?我的申请是在.net。

2 个答案:

答案 0 :(得分:1)

据我所知,NH不支持嵌套transactions

您可以在用例的根目录中使用事务,也可以在路上的任何位置使用事务,但它是全部或全部,AFAIK。

答案 1 :(得分:0)

这不是使用嵌套事务的问题。这是确保您拥有围绕所有相关代码的交易的问题 - 因此应该打开/关闭"更高的"。然后,每个单独的部分要么根本不关心交易,要么应该"背驮式"在任何现有交易中,只有当一个尚未存在时才开启新交易。

作为指导原则,事务管理是一个整体问题,应该在不同类型的包装器方法中处理,并根据应用程序的需要应用 - 而不是隐藏在特定的低级支持例程中。