我正在使用SubSonic 3.0(SimpleRepository)来处理ASP.NET MVC 1.0应用程序中的数据库访问。
处理每个Web请求的事务会很好,如果一切顺利并在异常情况下回滚,则提交。这可能吗?如果是这样,怎么样?
我知道这个话题已被多次讨论过,但我找不到满意的答案。我已经构建了自己的解决方案(在控制器中创建一个TransactionScope,然后在OnActionExecuted中提交/回滚),但事实证明它非常不可靠。
答案 0 :(得分:1)
链接http://ayende.com/Blog/archive/2011/04/12/refactoring-toward-frictionless-amp-odorless-code-what-about-transactions.aspx适用于NHibernate,但我确信您也可以使用它。基本上它讨论了创建自定义动作过滤器。同样,它在行动范围内进行,而不是广泛请求。