【发布时间】:2009-04-18 16:58:27
【问题描述】:
我对在我的 MVC 应用程序中到处写以下代码感到恼火。
using(var tx = new TransactionScope()){
blah...
tx.Complete()
}
我想以某种方式制作这款 DRYer。
我为此想到了几个不同的选择。
- 一个动作过滤器,以声明方式将某些动作标记为事务性。
- 在 Controller 基类中重写 OnActionExecuting 并使所有操作一次性成为事务性操作。
这些都是好主意吗?有什么我应该注意的问题吗?第二个选项似乎是获得大量死锁的好方法。
哦,是的,我还使用 StructureMap 和自定义控制器工厂将 deps 注入到我的控制器中,以防有人知道以这种方式注入事务的一些技巧。
【问题讨论】:
标签: asp.net-mvc transactions aop