如何处理ASP.NET MVC中的请求式数据库事务?

时间:2010-04-01 07:20:15

标签: asp.net-mvc database controller subsonic3 transactionscope

我正在使用SubSonic 3.0(SimpleRepository)来处理ASP.NET MVC 1.0应用程序中的数据库访问。

处理每个Web请求的事务会很好,如果一切顺利并在异常情况下回滚,则提交。这可能吗?如果是这样,怎么样?

我知道这个话题已被多次讨论过,但我找不到满意的答案。我已经构建了自己的解决方案(在控制器中创建一个TransactionScope,然后在OnActionExecuted中提交/回滚),但事实证明它非常不可靠。

1 个答案:

答案 0 :(得分:1)

链接http://ayende.com/Blog/archive/2011/04/12/refactoring-toward-frictionless-amp-odorless-code-what-about-transactions.aspx适用于NHibernate,但我确信您也可以使用它。基本上它讨论了创建自定义动作过滤器。同样,它在行动范围内进行,而不是广泛请求。