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